SQL Server 2008,条件选择查询
问题描述:
请帮我组成这个查询。SQL Server 2008,条件选择查询
我有一个表是这样的:
Row Product Role
-------------------
1 ABC-1 Self
2 ABC-2 Self
3 ABC-2 Joint
4 ABC-3 Self
5 ABC-3 Joint
6 ABC-4 Self
我想去的地方只作用是自我获取只有那些产品行。在从给定的表换句话说,SQL查询应该只输出行1 & 6.输出应该是这样的
Row Product Role
-------------------
1 ABC-1 Self
6 ABC-4 Self
谢谢
答
您可以使用NOT EXISTS
:
SELECT *
FROM dbo.YourTable t
WHERE NOT EXISTS(SELECT 1 FROM dbo.YourTable
WHERE Product = t.Product
AND Role <> 'Self');
+0
@TimSchmelter哦,当然这就是我说的;) – Lamak
答
你可以使用WHERE NOT EXISTS
为此:
Select *
From YourTable T
Where Not Exists
(
Select *
From YourTable T1
Where T.Product = T1.Product
And T1.[Role] <> 'Self'
)
And T.[Role] = 'Self'
谢谢。我有一个查询运行一堆连接获取数据,这将是子查询。某处我错过了连接,并且没有检索任何数据。 – suji