我尝试从名为t32的表中选择数据,代码如下:
SELECT
timestamp AS "time",
id
FROM CONCAT('t', "32")
但是,出现以下错误:
# 1064 - Fehler in der SQL-Syntax. Bitte die korrekte Syntax im Handbuch nachschlagen bei '("t", "32") LIMIT 0, 25' in Zeile 4
英文意译:
# 1064 - Error in SQL syntax. Please look up the correct syntax near '("t", "32") LIMIT 0, 25' in line 4
但是如果我使用
SELECT timestamp AS "time", id FROM t32
一切正常。
关于帮助我会很高兴的
1条答案
按热度按时间5vf7fwbs1#
您正在尝试在sql查询中构造表名。您不能使用常规sql查询来执行此操作。
一种解决方案是动态sql——即
prepare
以及exec
接近。然而,这确实表明您的数据模型存在问题。通常,不需要构造表名。关于单个实体的所有数据都应该在一个表中。
因此,查询应该更像: