FOUND_ROWS

Returns the number of rows when using commands that return a resultset, such as SELECT, DESC, and SHOW.

Syntax

FOUND_ROWS()

Arguments

  • None

Return Type

int

Examples

SHOW TABLES;
+--------------+
| Tables_in_db |
+--------------+
| testdata     |
+--------------+
SELECT FOUND_ROWS();
+--------------+
| FOUND_ROWS() |
+--------------+
|            1 |
+--------------+
SELECT ID FROM neighborhoods LIMIT 2;
+------+
| id   |
+------+
|    1 |
|    3 |
+------+
SELECT FOUND_ROWS();
+--------------+
| FOUND_ROWS() |
+--------------+
|            2 |
+--------------+
SELECT * FROM testdata;
+----------+
| Results  |
+----------+
|        1 |
|        2 |
|        3 |
|        4 |
|        5 |
+----------+ 
SELECT FOUND_ROWS;
+--------------+
| FOUND_ROWS() |
+--------------+
|            5 |
+--------------+
DESC testdata;
+-------+---------+------+------+---------+-----------+
| Field  | Type       | Null | Key  | Default | Extra |
+-------+-------------+------+------+---------+-------+
| id     | int(10)    | NO   |      | NULL    |       |
+--------+------------+------+------+---------+-------+
| name   | varchar(64)| NO   |      | NULL    |       |
+--------+------------+------+------+---------+-------+        
| amount | int(10)    | NO   |      | NULL    |       |
+-------+---------+------+------+---------+-----------+
SELECT FOUND_ROWS;
+--------------+
| FOUND_ROWS() |
+--------------+
|            1 |
+--------------+

Note

Please note, there can be an incorrect result given when running a query using LIMIT with an offset. See the following example:

CREATE TABLE t1(a BIGINT PRIMARY KEY AUTO_INCREMENT, b INT);
INSERT random integers into t1 so total row count is greater than LIMIT argument.
SELECT COUNT(*) FROM t1 GROUP BY a ORDER BY a LIMIT 5,10;
+----------+
| COUNT(*) |
+----------+
|        1 |
|        1 |
| 1 |
|        1 |
|        1 |
|        1 |
|        1 |
|        1 |
|        1 |
|        1 |
+----------+
10 rows in set (0.03 sec)
SELECT FOUND_ROWS(); -- the result should be 10
+--------------+
| FOUND_ROWS() |
+--------------+
|           15 |
+--------------+
1 row in set (0.00 sec)

Last modified: April 4, 2023

Was this article helpful?