gpt4 book ai didi

sql - 如何查找存储在字符串中而不是在sql数据表中的值

转载 作者:行者123 更新时间:2023-12-02 22:04:19 25 4
gpt4 key购买 nike

例如,我有一个字符串中的值列表:

'a', 'c', 'b', 'd'

从数据表中,我得到如下列结果:

Result
'a'
'b'

如何编写一个 sql 来返回不在表中的值:'c', 'd'

NewResult
'c'
'd'

?

如果能使用sql以外的其他简单工具也可以。我只需要结果。谢谢!

最佳答案

Create FUNCTION F_SplitAsTable 
(
@txt varchar(max)
)
RETURNS
@tab TABLE
(
ID Varchar(2000)
)
AS
BEGIN
declare @i int
declare @s varchar(2000)
Set @i = CHARINDEX(',',@txt)
While @i>1
begin
set @s = LEFT(@txt,@i-1)
insert into @tab (id) values (@s)
Set @txt=RIGHT(@txt,Len(@txt)-@i)
Set @i = CHARINDEX(',',@txt)
end
insert into @tab (id) values (@txt)
RETURN
END
GO

Declare @a table (Ch varchar(10))
insert into @a Values ('a')
insert into @a Values ('b')


Select s.* from dbo.F_SplitAsTable('a,b,c,d') s
left join @a a on a.Ch=s.ID
where a.Ch is NULL

关于sql - 如何查找存储在字符串中而不是在sql数据表中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16362955/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com