mysql 如何在Select语句中使用将表名作为表名返回的子查询

eqoofvh9  于 2023-03-07  发布在  Mysql
关注(0)|答案(1)|浏览(221)
SELECT DISTINCT TABLE_NAME 
    FROM INFORMATION_SCHEMA.COLUMNS
    WHERE COLUMN_NAME IN ('last_update')
        AND TABLE_SCHEMA='testdatabase'

工作正常,返回所需的所有表。现在我想使用这些表名作为另一个查询的输入,以执行以下SELECT语句:

SELECT MAX(last_update) FROM # <- here should be result of the first query
lsmepo6l

lsmepo6l1#

您无法在单个查询中执行所描述的操作。所有SQL标识符(例如表名)必须在分析查询时固定。在查询开始阅读数据之前,无法查询名称未知的表。
您必须执行您所描述的两个查询。第一个查询获取表名(作为字符串),然后在您的客户端代码中,使用该字符串格式化第二个查询。

相关问题