[英]Query with GROUP_CONCAT not working
我有3個具有以下結構的表:
**users**
id
first_name
last_name
**specialties**
specialty_id
specialty_name
**user_specialties**
user_id
specialty_id
以下是一些示例數據:
**users**
1 Bill Smith
2 Tom Jones
3 Jill Hayes
**specialties**
1 word
2 web
3 database
**user_specialties**
1 1
2 1
2 3
3 2
3 3
我需要查詢數據,以便將專長隱藏在一行上,如下面的輸出所示
**Desired Result**
Bill Smith word
Tom Jones word,database
Jill Hayes web,database
我正在使用以下查詢
SELECT
users.first_name,
users.last_name,
GROUP_CONCAT(specialties.specialtyname)
FROM
users
LEFT JOIN user_specialties ON user_specialties.user_id = users.userid
RIGHT JOIN specialties ON user_specialties.specialty_id = specialties.specialty_id
它不起作用...
您缺少GROUP BY
子句。 最有可能應該是GROUP BY users.id
,它會在JOIN行之后。
我剛剛測試了這個查詢
SELECT first_name,last_name,group_concat(specialty_name)
FROM user_specialties map
INNER JOIN specialties skill on user.id = map.user_id
INNER JOIN users user ON skill.specialty_id = map.specialty_id
GROUP BY user.id
干杯! :-)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.