[英]group_concat mysql subquery only returns one item
我有兩個表,scoreTable和用戶。 我正在嘗試按scoreTable上的哈希進行分組,但選擇具有該哈希的所有用戶名。 scoreTable只有ID
SELECT st.score,
GROUP_CONCAT(st.uid) as userList
FROM scoreTable st
GROUP BY hash
對於上面的查詢,我在userList中獲得用戶ID的列表: '1,2,3,4'
我想得到的是實際的“名稱”而不是ID-名稱在另一個表(用戶)上
SELECT st.score,
(SELECT group_concat(d.name) from users d d where d.uid = st.uid))
FROM scoreTable st
GROUP BY hash
但是由於某種原因,它僅顯示一個用戶(具有第一個ID的用戶)。
只需加入users
表:
SELECT st.score, group_concat(d.name)
FROM scoreTable st
JOIN users d ON d.uid = st.uid
GROUP BY hash
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.