当 X 为空然后是"a"、"b"、"c"时如何做 a?



如何做

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

,但我发现以前的版本更容易阅读。

相关内容

  • 没有找到相关文章

最新更新