首页 > 数据库 > > GaussDB T 其他函数F篇
语法:
FOUND_ROWS()
功能:返回一条带有LIMIT子句的SELECT语句被执行用于筛选一部分结果的同时又想知道完整的结果集(即包含被LIMIT过滤的结果)的行数。
说明:
如果在一条未指定SQL_CALC_FOUND_ROWS的SELECT语句后调用FOUND_ROWS(),则FOUND_ROWS()返回的行数就是SELECT语句自身返回的结果集行数,将不会包含受LIMIT子句影响被过滤的行数 。
对于UNION或UNION ALL或MINUS语句,FOUND_ROWS()只对全局LIMIT子句有影响。对于各个SELECT子集中出现的LIMIT语句则不会产生影响。
如果执行FOUND_ROWS()函数之前该会话尚未执行过SELECT语句,或之前执行的SELECT语句失败了,这种情况下FOUND_ROWS()函数的返回值未定义,则返回‘1’;如果之前执行的是一个SELECT语句外的其他语句,返回上个语句的执行影响数目。
示例:
--删除表employee。
DROP TABLE IF EXISTS employee;
--创建表employee。
CREATE TABLE employee(staff_id INT NOT NULL, first_name VARCHAR(64));
--**数据。
INSERT INTO employee(staff_id,first_name) values ('1', 'Alice');
INSERT INTO employee(staff_id,first_name) values ('2', 'Jack');
INSERT INTO employee(staff_id,first_name) values ('3', 'Brown');
--提交事务。
COMMIT;
--查找staff_id > 1的人。
SELECT * FROM employee where staff_id>1;
STAFF_ID FIRST_NAME
------------ ----------------------------------------------------------------
2 Jack
3 Brown
2 rows fetched.
--返回满足条件的行数。
SELECT FOUND_ROWS();
FOUND_ROWS()
--------------------
2
1 rows fetched.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69959250/viewspace-3129258/ ,如需转载,请注明出处,否则将追究法律责任。