有数bi中的case when函数实现原理

1.问题背景:有客户会问数据库的case when 语法支持 如下带in的方式的写法,为什么在bi中这么些会提示错误。

CASE 
        WHEN [地区] IN ('东北', '华北') THEN '北方'
        WHEN [地区] IN ('华东', '华南', '西南') THEN '南方'
        WHEN [地区] IN ('西北') THEN '西部'
        ELSE '其他

2.原因:有数bi中的case when 实现原理不是if else,是 switch,支持的语法结构只能如下:

switch 变量
when 1 then 结果1
when 2 then 结果2
when 3 then 结果3