我有下表。如何查找父母是否有多个项目。
例如:父级1具有项ABC和BBC,因此查询应显示“(多个)”而不是项名称。 父级5只有一个项目,应该显示项目名称。
Price | Item | Parent
-----------|------------|-------------
20 | ABC | 1
10 | BBC | 1
5 | CBC | 5
21 | DDB | 6
17 | BDD | 6
31 | DBB | 6
我创建了以下似乎不起作用的查询。
SELECT CASE WHEN COUNT(*) > 1 THEN '(Multiple)' ELSE Item END FROM
(SELECT COUNT(*), Item FROM Table WHERE Parent = @parent
GROUP BY Item) Table GROUP BY Item
答案 0 :(得分:1)
在下面检查这个小提琴
SELECT distinct p.parent, case when p1.item is not null then 'MULTIPLE'
else p.item end as txt
FROM product p
left JOIN product p1 on p1.parent=p.parent and p1.item<>p.item
WHERE p.Parent = 6 --@parent