如何做
udfo在(基金为null然后'a',b','c'Else'D'end时)
因为您只能做:
udfo(算出基金为null,然后'a'''d'结束) ?
使用OR
和两个互斥条件:
SELECT *
FROM your_table
WHERE ( fund IS NULL AND udfo IN ( 'a', 'b', 'c' ) )
OR ( fund IS NOT NULL AND udfo IN ( 'd' ) )
您甚至可以使用CASE
语句实现它:
SELECT *
FROM your_table
WHERE CASE WHEN fund IS NULL AND udfo IN ( 'a', 'b', 'c' )
THEN 1
WHEN fund IS NOT NULL AND udfo IN ( 'd' )
THEN 1
ELSE 0
END = 1
,但我发现以前的版本更容易阅读。