0
我有我想要查找哪個不在表中的國家列表。可以說我的名單是這樣的:('希臘','智利','夏威夷'),並且在表中已經存在希臘和智利,而不存在夏威夷。Sql Server 2012:如何找到不在列表中的元素
我如何使查詢找到我提供的列表中缺少的內容?
在此先感謝。
我有我想要查找哪個不在表中的國家列表。可以說我的名單是這樣的:('希臘','智利','夏威夷'),並且在表中已經存在希臘和智利,而不存在夏威夷。Sql Server 2012:如何找到不在列表中的元素
我如何使查詢找到我提供的列表中缺少的內容?
在此先感謝。
一種方法是將您的標準放在另一個表中,然後使用外連接。例如:
DECLARE @Test as table(Cnty varchar(50))
insert into @Test(Cnty) values ('Greece')
insert into @Test(Cnty) values ('Chile')
SELECT tmp2.Cntry FROM (
SELECT * FROM @Test t
RIGHT JOIN (SELECT 'Greece' Cntry UNION ALL
SELECT 'Chile' UNION ALL
SELECT 'Hawaii') Tmp
ON t.Cnty = tmp.Cntry
) tmp2
WHERE cnty is null
謝謝,但我的問題是,不僅有3個元素在列表中,所以我不能一一插入。 – CodeArtist
有幾種方法可以構建您的表格。例如,我創建了一個表值函數,將分隔字符串轉換爲值表。如果這仍然行不通,請提供更多關於您的要求的信息。 – Steve