You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用多分支CASE WHEN为何仅返回BOOLEAN值?期望返回THEN指定内容

问题解决:CASE WHEN返回布尔值而非指定内容

你的SQL里Value列的写法有误:你写了rtw.typecode = CASE ... END,这是在做相等性判断——把原typecode字段和CASE语句的结果做对比,所以返回的是布尔值(True/False),而不是你期望的CASE语句中THEN后的文本内容。

另外注意最后两个条件用了=匹配带%的字符串,SQL里=是精确匹配,%会被当作普通字符处理,应该改用LIKE才能实现模糊匹配。

修正后的SQL代码如下:

--with loan as (
SELECT DISTINCT
rtw.identifierdimsk
,lmmf.milestonesk
,lmd.groupname
,rtw.typecode
,rtw.campaignname
,rtw.partnername
,rtw.sourcename
,lmmf.date
,CASE WHEN rtw.typecode = 'PROS' THEN 'Prospect'
      WHEN rtw.typecode = 'CARI' THEN  'Deluxe'
      WHEN rtw.typecode IN ('CARIC', 'CTE') THEN  'CSignal'
      WHEN rtw.typecode = 'RMT' THEN  'Pre Pull'
      WHEN rtw.typecode IN ('90','90PLUS','C90','C90PLUS','BP','ELO','AUTO','POP') THEN  'In-process'
      WHEN rtw.typecode LIKE 'XU3%' THEN  'U3'
      WHEN rtw.typecode LIKE '%CT%' THEN 'Misc'
END AS Value
FROM rtal_winner rtw
INNER JOIN one_fact lmmf ON lmmf.identifierdimsk = rtw.identifierdimsk
INNER JOIN one_dim lmd ON lmd.milestonesk = lmmf.milestonesk
AND lmmf.date >= '2022-10-25'

内容的提问来源于stack exchange,提问作者Data Manliness

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 21:15:36