例如,我使用的是world.sql數據庫,這裏是什麼它看起來像一個簡短的樣本:MySQL的GROUP_CONCAT返回所有值,而不是值的每列
每個CountryCode:char(3) Language:char(30) IsOfficial:enum('T', 'F') Percentage:float(4,1)
會有幾個條目國家代碼,看起來像這樣:
ABW Dutch T 5.3
ABW English T 9.5
我的目標如下:我想獲得一個CountryCode的所有官方語言。也就是說,如果這是所有國家代碼爲ABW我希望它返回:
ABW Dutch|English
這裏是我的MySQL查詢:
SELECT
CountryCode,
group_concat(top.offlanguages SEPARATOR "|") AS "Official Languages"
FROM (
SELECT
CountryCode,
Language AS offlanguages
FROM CountryLanguage
WHERE IsOfficial = 'T'
GROUP BY CountryCode
) top
出於某種原因,返回下ABW COUNTRYCODE每一個可能的語言,我無法弄清楚爲什麼。
也就是說,它返回是這樣的:
ABW荷蘭語|英語|阿拉伯語| ...(在和和)
@AzizShaikh哪裏是用另一種查詢與主查詢的一部分的需求?沒有這個可以做到。對? – rakeshjain
AzizShaikh的解決方案是最好的解決方案嗎? – rakeshjain
@rakeshjain我相信你是對的,但我沒有測試過。你可以在你的答案中編輯並提到這個。 OP可能會在測試後測試並使用您的建議。 –