一尘不染

在MySQL查询中将SELECT与LIMIT一起使用时,如何计算所有行?

mysql

我有这样的mysql查询:

SELECT A.ID, A.NAME, B.ID, B.NAME
FROM table1 A
JOIN table2 B ON ( A.ID = B.TABLE1_ID )
WHERE
    cond1, cond2, ..., condN
LIMIT 10

我在查询中有很多where子句。如何改进此查询以获取完整的行数?没有LIMIT我不想再使用一个请求。


阅读 194

收藏
2020-05-17

共1个答案

一尘不染

您正在寻找的是这个

SELECT SQL_CALC_FOUND_ROWS A.ID, A.NAME, B.ID, B.NAME
FROM table1 A
JOIN table2 B ON ( A.ID = B.TABLE1_ID )
WHERE
  cond1, cond2, ..., condN
LIMIT 10

SELECT FOUND_ROWS();
2020-05-17