--从多个表中选择的显式内部连接

lfapxunr  于 2021-06-18  发布在  Mysql
关注(0)|答案(2)|浏览(252)

每当我需要从多个表中选择列进行内部联接时,我就可以毫无困难地正确使用隐式联接的语法。但是,我很难让它与显式的内部连接一起工作。
让我用mysql世界数据库的一个例子来说明
我的示例性查询使用隐式内部联接,如下所示:

SELECT Name, Language, Percentage
FROM Country, CountryLanguage WHERE Code = CountryCode ;

这和预期的一样。我可以有任何顺序的列,从任何一个表,没有任何问题。
我想要上面查询的显式内部连接版本(使用“内部连接”和“on”)。

vbopmzt1

vbopmzt11#

也许会像

SELECT Name, Language, Percentage, 
FROM Country
INNER JOIN CountryLanguage ON Country.Code = CountryLanguage.CountryCode
frebpwbc

frebpwbc2#

您只需更换 , 你含蓄地加入这个词 JOIN :

SELECT Name, Language, Percentage
FROM Country
JOIN CountryLanguage 
WHERE Code = CountryCode

查询也可以正常工作。您也可以替换 WHEREON 再说一次,它会很好的工作。最后,如果要显式命名列所来自的表(这是首选方法),可以使用:

SELECT c.Name, cl.Language, cl.Percentage
FROM Country c
JOIN CountryLanguage cl
ON c.Code = cl.CountryCode

相关问题