我有两张桌子:
inter_archi_cat
表)及其与其他inter_archi
table)我想只选择链接到任何实体的类别。
SELECT *
FROM inter_archi_cat
WHERE id IN (SELECT GROUP_CONCAT(DISTINCT sub_cat) as allcat
FROM inter_archi)
如果我单独运行子查询,我会给出正确的结果(apx 40条记录)。但在运行主查询时,它只给出了1条记录。
答案 0 :(得分:0)
我做到了:
这里是更改查询:
SELECT distinct cat.id,cat.name
FROM inter_archi_cat as cat
join inter_archi as inter on (cat.id in (inter.sub_cat))
从
获得了想法答案 1 :(得分:0)
您不必使用IN和子查询。使用简单的内连接可以获得相同的结果:
SELECT ic.* FROM inter_archi_cat ic
JOIN inter_archi i
ON i.sub_cat = ic.id
GROUP BY ic.id
会更快。