繁体   English   中英

在MySQL查询中使用嵌套的大小写条件

[英]using nested case condition in mysql query

if(qtype==3)
  column=somecolumn;
else if(qtype==2)
    {
      if(open==0)
      column=anycolumn;
      else
      column =somecolumn;
    }
else{
acolumn,bcolumn,ccolumn  //this else----|
}                            |
             ----------------|

我想在我的mysql查询中实现上述嵌套的if-else条件。其中条件将基于column之一。这是我到目前为止所做的。

select qtype,open,(Case when qtype=2 then answer
Else (Case when qtype=3 then 
                          (Case when open=0 then somecolumn  
                           Else othercolumn End) End)

Else....//how to implement this else here)

我很困惑如何整合最后的其他部分?

谢谢

格式正确,但是与开头的if-else伪代码相比,您将2和3进行了切换:

select qtype,open,(Case when qtype=3 then answer
Else (Case when qtype=2 then 
                          (Case when open=0 then somecolumn  
                           Else othercolumn End) End))

查看大小写语法 ,这是我想到的。

CASE qtype
    WHEN 3 THEN column=somecolumn;
    WHEN 2 THEN (CASE open WHEN 0 THEN column=anycolumn ELSE column = somecolumn)
    ELSE othercolumn
END CASE

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM