【发布时间】:2013-02-17 16:20:25
【问题描述】:
假设在表 A 中有很多行,列值为 a,b,c,d。
其中,我想要 10 行,列值为“c”,同时还计算列值为“c”的总行数。
我试过了:
select count(*),* from A where column like 'c'; (without limit)
select count(*),* from A where column like 'c' limit 10;
这甚至可能吗?还是我必须触发两个查询。
【问题讨论】:
-
您可以使用
union,但为什么不简单地运行两个查询。 -
触发 2 个查询会比一个查询更好吗???
-
取决于您的应用程序。两个查询可能会引发竞争条件风险(如果两者之间发生一些变化,两个结果可能会不同)。但是在您的问题中,我看不到同时获得 10 个
c行(没有其他约束或排序)以及总数的兴趣。 -
收到的信息将作为ajax结果传递,然后显示图像。如果有 80 张或更多图片,则需要花费大量时间,因此我尝试仅选择性地加载前 10 张,然后再加载其他图片。