现有表tab:
字段tbname值对应一个表名table1:
表tab中的字段tbname的值对应数据库中众多表的其中一个表的表名
查询语句一:SELECT tbname FROM tab WHERE id = 1;
==> table1
将此结果作为查询语句二的查询对象表名,即此句的结果是数据库中已经存在表的表名
查询语句二:SELECT * FROM table1;
==> 所需数据
即此句中的'table1'实为一变量值,语句二查询哪个表由语句一的结果指定
如何将两个select语句整合成一个?
将一个查询语句的结果当做另一个查询语句要查询的表的表名...
https://bbs.csdn.net/topics/3...
这个地址可以帮助题主解决问题。
按题主的意思应该是下边这样吧
SET @sssqqqlll = concat( 'SELECT * FROM ', ( SELECT tbname FROM tab WHERE id = 1 ));
PREPARE stmt FROM @sssqqqlll;
EXECUTE stmt;