首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Case语句的硬编码结果的嵌套case

问Case语句的硬编码结果的嵌套case
EN

Stack Overflow用户
提问于 2017-03-08 19:02:14
回答 1查看 296关注 0票数 2

我有一个类似的数据集;

代码语言:javascript
复制
col1 col2 col3
1     YES  NO
2     NO   YES

我正在尝试应用case语句,

代码语言:javascript
复制
case when col1 = 1 then col2
     when col1 = 2 then col3 end as newcol

现在,newcol将在输出中具有YES/NO形式的值。是否可以在上面的case条件中应用另一个case,这样我就可以将YES硬编码为Y,将NO硬编码为N。

我通过在外部查询中添加一条case语句得到了结果。有没有像嵌套case这样的替代方法。

我还可以使用列别名newcol来应用case条件吗

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-08 19:08:17

您可以在case周围添加case表达式,如下所示:

代码语言:javascript
复制
case (
    case
        when col1 = 1 then col2
        when col1 = 2 then col3
    end
) when 'YES' then 'Y' else 'N' end as newcol

SUBSTR会选择不带条件的YES或NO的第一个字符:

代码语言:javascript
复制
SUBSTR(
    case
        when col1 = 1 then col2
        when col1 = 2 then col3
    end
,   1
,   1
) as newcol
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42669530

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档