小编典典

查询中有LIMIT时,如何获取总结果数?

sql

我有这样的查询:

select * from table where id <= 10 limit 5;  // table has +10 rows

上述查询^中的结果数为10行。现在,我想知道如何在此查询中获取总结果数:

select * from table where col = 'anything' limit 5;

如何计算此^中所有结果的数量 (与无关limit

其实我想要这个数字:

select count(*) as total_number from table where col = 'anything'

现在,我想知道如何在没有其他查询的情况下获得总结果数。


阅读 36

收藏
2021-04-07

共1个答案

小编典典

添加一列,total例如:

select t.*
     , (select count(*) from tbl where col = t.col) as total
from tbl t
where t.col = 'anything'
limit 5

@Tim Biegeleisen所述limit 关键字在所有其他内容之后应用,因此count(*)仍然返回正确的答案。

2021-04-07