Jim*_*ard 4 sql t-sql sql-server
遇到WHERE搜索语句的问题想要使用类似的结构..
WHERE f.foo IN
CASE @bar
WHEN 'BAR' THEN
('FOO','BAR',BAZ')
WHEN 'BAZ' THEN
('FOOBAR','FOOBAZ')
END
Run Code Online (Sandbox Code Playgroud)
要么
WHERE CASE @bar
WHEN 'BAR' THEN
f.foo IN ('FOO','BAR',BAZ')
WHEN 'BAZ' THEN
f.foo IN ('FOOBAR','FOOBAZ')
END
Run Code Online (Sandbox Code Playgroud)
其中@bar是一个定义正确的临时变量,正确的类型,所有f都很好地定义..
我收到一个关于"错误',''的错误
WHERE (@bar = 'BAR' and f.foo IN ('FOO', 'BAR', 'BAZ')) OR
(@bar = 'BAZ' and f.foo IN ('FOOBAR', 'FOOBAZ'))
Run Code Online (Sandbox Code Playgroud)