我無法自己弄清楚這一點。希望有人能幫助我。在SQL Server中合併多行
我有三個表:users
,cards
,referees
和users_cards
用戶:
id | userName | referee_id
----------------------------
1 | u1 | 1
2 | u2 | 1
3 | u3 | 2
裁判員:
id | refName
--------------
1 | ref1
2 | ref2
卡:個
id | cardName
--------------
1 | card1
2 | card2
Users_Cards:
user_id | card_id | color | number
-------------------------------------------
1 | 1 | red | 123
1 | 2 | yellow | 312
2 | 2 | yellow | 523
3 | 1 | red | 344
我想要得到的結果是:
id | userName | refName | cards
1 | u1 | ref1 | card1: red (123), card2: yellow (312)
2 | u2 | ref1 | card2: yellow (523)
3 | u3 | ref2 | card1: red (344)
等等......
所有我能得到的是多當用戶擁有多於一張卡的行時。那麼我怎麼能像這樣結合他們。
謝謝你給任何人,誰可以幫我'
編輯:!
目前我只是用LEFT JOIN
小號
SELECT UserName, refName cardName, color, number,
FROM users
LEFT JOIN referees ON users.referee_id = referees.id
LEFT JOIN users_cards ON users.id = users_cards.user_id
LEFT JOIN cards ON dbo.users_cards.card_id = cards.id
爲什麼這個問題被標記[標籤:MySQL的]和[標籤:SQL服務器]標題提到「SQL Server」... – eggyal
發佈您當前正在使用的查詢,以便我們可以更好地瞭解數據如何返回。 –