set @asql=concat('SELECT A.ID,B.LG FROM TABLE A LEFT JOIN TABLE1 B ON A.ID = B.ID WHERE A.NUM >= ',?,' AND A.NUM <=',?,' AND B.NUM >=',?,' LIMIT ',?,',',? ); prepare stml from @asql; execute stml
SELECT SQL_CALC_FOUND_ROWS AccountID,CampaignID FROM t WHERE ID = 10984 LIMIT 10; SELECT FOUND_ROWS() 返回291,但是t表中是没有一条数据的。这是什么情况?SELECT AccountID,CampaignID FROM t WHERE ID = 10984 结果是什么set @a1=10; set @asql=concat('SELECT A.ID,B.LG FROM TABLE A LEFT JOIN TABLE1 B ON A.ID = B.ID WHERE A.NUM >= ',@a1,' AND A.NUM <=',?,' AND B.NUM >=',@a1,' LIMIT ',?,',',? ); prepare stml from @asql; execute stml
t表示个空表,SELECT AccountID,CampaignID FROM t WHERE ID = 10984 结果是没有一条记录
你确定表里没数据? SELECT count(*) FROM t WHERE ID = 10984确实是空?
WHERE A.NUM >= ',?,' AND A.NUM <=',?,' AND B.NUM >=',?,' LIMIT ',?,',',? );
prepare stml from @asql;
execute stml
SELECT FOUND_ROWS() 返回291,但是t表中是没有一条数据的。这是什么情况?SELECT AccountID,CampaignID FROM t WHERE ID = 10984
结果是什么set @a1=10;
set @asql=concat('SELECT A.ID,B.LG FROM TABLE A LEFT JOIN TABLE1 B ON A.ID = B.ID
WHERE A.NUM >= ',@a1,' AND A.NUM <=',?,' AND B.NUM >=',@a1,' LIMIT ',?,',',? );
prepare stml from @asql;
execute stml
SELECT count(*) FROM t WHERE ID = 10984确实是空?
mysql> SELECT SQL_CALC_FOUND_ROWS * FRO
-> SELECT FOUND_ROWS()$$
Empty set (0.00 sec)+--------------+
| FOUND_ROWS() |
+--------------+
| 0 |
+--------------+
1 row in set (0.00 sec)mysql> DELIMITER ;
mysql> DELIMITER $$
mysql> SELECT SQL_CALC_FOUND_ROWS * FROM a WHERE ID = 10984 LIMIT 10;
-> SELECT FOUND_ROWS()$$
Empty set (0.00 sec)+--------------+
| FOUND_ROWS() |
+--------------+
| 0 |
+--------------+
1 row in set (0.00 sec)mysql> DELIMITER ;