l--*_*''' 1 sql sql-server sql-server-2008
我有两个列表,我想看看两个列表没有共同点.例如:
List1:
'a','b','c','123'
List2:
'd','e','f','a','asd','c'
Run Code Online (Sandbox Code Playgroud)
我希望输出为:
'b','123','d','e','f','asd'
Run Code Online (Sandbox Code Playgroud)
像这样的东西?
select * from ('a','b','c','123')
join ('d','e','f','a','asd','c')
on ???
Run Code Online (Sandbox Code Playgroud)
有没有使用表格的纯SQL Server解决方案?
如果您可以控制列表,我只会使它们成为表变量:
DECLARE @a TABLE (str varchar(100))
INSERT INTO @a
VALUES
('a'),
('b')...
DECLARE @b table (str varchar(100))
INSERT INTO @b
VALUES
...
(SELECT str FROM @a
EXCEPT
SELECT str FROM @b)
UNION
(SELECT str FROM @b
EXCEPT
SELECT str FROM @a)
Run Code Online (Sandbox Code Playgroud)