基本上,我有两个表,一个叫CountryLanguage,另一个叫Country。
我尝试了很多不同的事情,但我似乎无法回答我的问题:
两个表都有一个国家代码,用于连接表,每个国家/地区都有自己的名称。这是国家/地区表的图像:
CountryLanguage表在每列中都有多种语言,国家代码和使用该语言的人员百分比:
我基本上尝试做的事情(数小时和数小时)列出了每个国家/地区最常用的语言(只需查找该国家/地区使用的每种语言的最大百分比,然后将其链接起来对国家语言的价值)。语法给我带来了很多问题,因为我对MySQL来说比较新。
非常感谢任何帮助。 :d
SELECT CL.Percentage, C.Name, CL.Language
From world169.CountryLanguage as CL join
world169.Country as C ON (CL.CountryCode = C.Code)
编辑: 感谢Jinesh的回复。还有一个小问题(我之前有过)。我将向您展示我在运行代码时会发生什么情况的前后图片:Before:它显示了每种语言的百分比,因此当您找到最大值(百分比)时,您会得到76.7和语言英语,对吗?但相反,你得到(正确的)百分比和错误的语言(这是我一次又一次遇到的另一个问题。)
如何将英语列为荷兰语而不是荷兰语? (顺便说一句,谢谢你的帮助,它真的很有用)
答案 0 :(得分:0)
我们可以尝试这样的事情:
SELECT
CL.Percentage,
(Select C.Name from world169.Country as C where CL.CountryCode = C.Code),
CL.Language
FROM world169.CountryLanguage as CL
WHERE BALANCE = (SELECT MAX(CL2.Percentage) FROM world169.CountryLanguage as CL2 WHERE CL2.CountryCode = CL.CountryCode )