此值位于表格的列中:
'962091','962092','962093'
我尝试在where
中使用它。首先我声明一个变量:
DECLARE @KPLnr varchar(100)
SET @KPLnr = CONVERT(nvarchar(max), dbo.UF_GetOption('FastecKPL')) /* here I get the values in */
如果我选择,我会得到@KPLnr: '962091', '962092','962093'
的正确值,但如果我尝试在where语句中使用它,则看起来该值设置错误。
我得到0个结果,但如果我手动设置:
WHERE c.kpl IN ('962091', '962092','962093')
我得到了414个结果。
那么为什么WHERE c.kpl IN ('962091', '962092', '962093')
不等于
我的代码中有WHERE c.kpl IN (@KPLnr)
?
答案 0 :(得分:0)
当撇号存储在文本列中时,您需要通过添加额外的撇号来转义:
WHERE c.kpl IN ('962091'', ''962092'',''962093')