sql >> Database teknologi >  >> RDS >> Mysql

Hentning af antallet af rækker med en GROUP BY-forespørgsel

Der er en fin løsning i MySQL.

Tilføj søgeordet SQL_CALC_FOUND_ROWS lige efter søgeordet SELECT :

SELECT SQL_CALC_FOUND_ROWS t3.id, a,bunch,of,other,stuff FROM t1, t2, t3 
WHERE (associate t1,t2, and t3 with each other) 
GROUP BY t3.id 
LIMIT 10,20

Kør derefter endnu en forespørgsel med funktionen FOUND_ROWS() :

SELECT FOUND_ROWS();

Det bør returnere antallet af rækker uden LIMIT-sætningen.

Tjek denne side for mere information:http://dev.mysql.com/doc/refman/5.0/en/information-functions.html#function_found-rows



  1. SQL FINDER Operatør for begyndere

  2. Kontrollerer, om en ikke-LOB-kolonne skal opdateres

  3. Bindende parametre for WHERE IN klausul med PDO

  4. Sådan fungerer UTC_TIME() i MariaDB