使用 SQL 子查询作为表名
Use SQL subquery as tablename
我想从表名存储在用户列表中的用户那里获取所有特定分数,如下所示:
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
错误消息说明了一切。您需要在派生 table.
上使用别名
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
将不可用,您的查询仍然会失败。
我想从表名存储在用户列表中的用户那里获取所有特定分数,如下所示:
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
错误消息说明了一切。您需要在派生 table.
上使用别名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
将不可用,您的查询仍然会失败。