此 MySQL SQL 语句传达了我正在尝试执行的操作,但无效:
SELECT * FROM
(SELECT DISTINCT Thing FROM BigList) AS SomeThing
LEFT JOIN thingDetail ON SomeThing = thingDetail.Thing
-- other left joins follow
问题是在 ON 子句中,不允许使用别名。并且,从子查询中删除别名会产生错误,提示别名是必需的。非常第二十二条军规。
我在网上找到了很多示例,其中 JOIN 部分是一个子查询,并且别名确实在那里起作用。但我还没有找到可以实现上述功能的东西。
如果它在关于子查询的 MySQL 手册中,我就找不到它了。我应该使用什么语法来执行此操作?
最佳答案
SELECT * FROM
(SELECT DISTINCT Thing FROM BigList) AS SomeThing
LEFT JOIN thingDetail ON SomeThing.Thing = thingDetail.Thing
-- other left joins follow
您指的是 table
别名而不是表中的 column
。
关于mysql - 在子查询上使用别名,然后在 ON 子句中使用它进行 LEFT JOIN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32617025/