正如标题所述,我遇到以下SQL错误
第156条消息,第15级,状态1,第14行
关键字“ IN”附近的语法不正确
我使用IN关键字的地方是
AND (CASE WHEN (@client IS NOT NULL)
THEN ([Client] IN @client)
END)
@client
的声明如下:
declare @client varchar(50)
但是,我尝试将@client替换为('Text', 'Text', 'Text')
,但仍然无法正常工作。
我在互联网上搜索了一下,却找不到确切的原因。
此外,@client
参数将在C#程序中设置为字符串列表。
谢谢。
答案 0 :(得分:2)
考虑到您正在通过C#传递这样的逗号分隔值单个字符串
find()
并将其放入您的"Text,Text,Text"
变量中,
因此基本上您的@client
将设置为该字符串
@client
您可以做这样的事情
@client='Text,Text,Text'