我有一个复杂的情况。我想编写一个包含“case when”条件的SQL查询,放在“where”子句中。
就像这样:
SELECT *
FROM <table>
WHERE
<Column1> in
CASE <Column2>
WHEN 1 THEN ('OP', 'CL')
WHEN 0 THEN ('RE', 'ST')
END
Column1必须是“in”,而不是“=”,因为在Column1的条件中有多个值。该查询返回“Incorrect syntax near ','.”错误。
你能给我任何建议吗?(非常抱歉我的英语不好。)
编辑:我想我误解了。如果Column2为1,则条件必须像这样“IN('OP', 'CL')”,否则Column1为2,则条件必须像这样“IN ('RE', 'ST')”。