ROW_COUNT()
函数返回上一个 SQL 语句执行的受影响的行数。ROW_COUNT()
函数的执行逻辑如下:
- 如果上一个语句是 DDL 语句,
ROW_COUNT()
函数将返回 0。比如CREATE TABLE
,DROP TABLE
等。 - 如果上一个语句是
UPDATE
,INSERT
,DELETE
,ALTER TABLE
或者LOAD DATA
语句,ROW_COUNT()
函数将返回受影响的行数。 - 如果上一个语句是一个返回结果集的
SELECT
语句,ROW_COUNT()
函数将返回 -1。 - 如果上一个语句不是一个返回结果集的
SELECT
语句,ROW_COUNT()
函数将返回受影响的行数。比如:SELECT * FROM t1 INTO OUTFILE 'file_name'
。