Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 查询以查找父项在SQL Server中是否有多个项_Sql Server_Sql Server 2008_Sql Server 2005 - Fatal编程技术网

Sql server 查询以查找父项在SQL Server中是否有多个项

Sql server 查询以查找父项在SQL Server中是否有多个项,sql-server,sql-server-2008,sql-server-2005,Sql Server,Sql Server 2008,Sql Server 2005,我有下表。如何查找父项是否有多个项 例如:父1有ABC和BBC项,因此查询应显示“(多个)”而不是显示项名称。 父项5只有一个项,它应该显示项名称 Price | Item | Parent -----------|------------|------------- 20 | ABC | 1 10 | BBC | 1 5 | CBC | 5 21 |

我有下表。如何查找父项是否有多个项

例如:父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

检查下面的小提琴

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
选择不同的p.parent,如果p1.item不为null,则选择“多个”
else p.item结束为txt
来自产品p
左连接p1上的产品p1。父项=p.parent和p1.itemp.item
其中p.Parent=6--@Parent