表名称为字段

时间:2014-01-26 15:00:00

标签: mysql sql dynamic-sql

是否可以查询名称来自子查询的表?

例如。,

SELECT * FROM <TABLE_NAME IS <SUB_QUERY>>

select * from (
(select distinct(name) from category where id = 3 limit 1) CAT);

INNER QUERY RESULTS --> DEPARTMENT;

所以必须从部门表中获取。

使用Mysql作为DB。

2 个答案:

答案 0 :(得分:2)

您应该使用Prepared Statements

在你的情况下应该是:

select @name := name from (
(select distinct(name) from category where id = 3 limit 1) CAT);

set  @sqlquery := 'select * from ' . @name ;
prepare qry from @sqlquery ;
execute qry;
deallocate prepare qry;

答案 1 :(得分:0)

这可能会有所帮助SQL Syntax for Prepared Statements 用两个词来说:你可以执行在varchar变量中指定的sql命令,这些命令可以通过连接和其他东西产生。