繁体   English   中英

JOIN中的CONCAT_WS行

[英]CONCAT_WS rows in JOIN

我有桌子

profiles (id, name, deleted)
categories (id, name, deleted)
profiles_categories (id, profile_id, category_id, , deleted)

我的查询错了

SELECT p.id, p.name CONCAT_WS(', ', c.name) AS keywords_categories
FROM profiles p
LEFT JOIN profiles_categories pc ON p.id = pc.profile_id
LEFT JOIN categories c ON pc.id = c.id
WHERE p.deleted = FALSE 

所以,我想要所有 profiles结果与concan categories.name

谢谢

它不是很清楚,但似乎你真的想要使用GROUP_CONCAT ,它将为每个配置文件创建一个逗号分隔的所有类别列表:

SELECT p.id, 
  p.name, 
  GROUP_CONCAT(c.name SEPARATOR ', ') AS keywords_categories
FROM profiles p
LEFT JOIN profiles_categories pc ON p.id = pc.profile_id
LEFT JOIN categories c ON pc.id = c.id
WHERE p.deleted = FALSE 
GROUP BY p.id, p.name

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM