首页 > 解决方案 > 我可以在一个查询中获取具有 LIMIT n,m 的记录计数吗?

问题描述

在 MySQL 中,我需要获取行数:

SELECT count(*) FROM Table

并在中间得到一些记录:

SELECT * FROM Table ORDER BY id DESC LIMIT 100,5

我可以在一份SELECT声明中同时进行吗?

标签: mysql

解决方案


您在嵌套子查询上使用交叉连接来构建唯一查询以进行计数

  SELECT Table.* , t.my_count
  FROM Table 
  CROSS JOIN (
    SELECT count(*) my_count
    FROM Table
  ) t 
  ORDER BY id DESC LIMIT 100,5

推荐阅读