我有2个表分别命名为cat和sub_cat。每个sub_cat至少拥有一只或多于一只猫。我试图使用LEFT Joins来获取两者,但是得到了cat的副本。
我尝试了“ GROUP BY”子句,但是针对cat只得到一个sub_cat 我也尝试过“ DISTINCT”,但没有得到准确的结果
SELECT DISTINCT c.id AS cat_id, c.title AS cat_title, s.id, s.title,s.cat_name FROM cat c LEFT JOIN sub_cat s ON c.id = s.cat_name
使用分组依据
SELECT c.id AS cat_id, c.title AS cat_title, s.id, s.title,s.cat_name FROM cat c LEFT JOIN sub_cat s ON c.id = s.cat_name GROUP BY c.id
我希望只有一只猫和多个sub_cats,但是要让多个cat对多个sub_cat
已编辑
如图所示,我希望所有的猫在用户单击其中的任何一个时都可以得到所有相关的sub_cats Expected Output
答案 0 :(得分:0)
以下查询将为您提供帮助。
SELECT c.id AS cat_id, c.title AS cat_title, group_concat(s.cat_name)sub_cat_name
FROM cat c INNER JOIN sub_cat s
ON c.id = s.cat_name
GROUP BY c.id