我想從用戶,其表名存儲在用戶的列表,像這樣得到的所有具體比分:使用SQL子查詢的表名
SELECT Score
from (SELECT tablenameOfUser FROM `Users`)
WHERE X='something'
AND Y='somethingElse'
ORDER BY Score
我得到的錯誤:
1248 - Every derived table must have its own alias
我想從用戶,其表名存儲在用戶的列表,像這樣得到的所有具體比分:使用SQL子查詢的表名
SELECT Score
from (SELECT tablenameOfUser FROM `Users`)
WHERE X='something'
AND Y='somethingElse'
ORDER BY Score
我得到的錯誤:
1248 - Every derived table must have its own alias
錯誤消息說明了這一切。您需要派生表上的別名。
SELECT Score
from (SELECT tablenameOfUser FROM `Users`)
WHERE X='something'
AND Y='somethingElse'
ORDER BY Score
應該是:
SELECT Score
from (SELECT tablenameOfUser FROM `Users`) yourAlias
WHERE X='something'
AND Y='somethingElse'
ORDER BY Score
你的子查詢不僅具有tablenameOfUser
列,因此Score
,X
和Y
,將無法使用,你的查詢仍然會失敗。
那麼使用sql-result作爲表名的解決方案是什麼? –
@MarcelEnnix,問一個新的問題,社區將回答。 –
哪個dbms? (似乎是ANSI SQL兼容...除了分隔標識符的單引號...) – jarlh
我正在使用phpMyAdmin – Mark
[每個派生表必須具有自己的別名]的可能重複(http://stackoverflow.com/questions/1888779/every-derived-table-must-have-its-own-alias) – AdamMc331