简体   繁体   English

我的SQL select语句中的case语句

[英]Case statements in my sql select statement

SELECT
column1,
column2,
(CASE WHEN column1=NULL THEN @NEW_column =column2
WHEN column1!=NULL THEN @NEW_column =column1
END) AS NEW_column,
FROM my_table

In the above select statement , i am creating a new variable called 在上面的select语句中,我正在创建一个名为
NEW_column and the value of it should be based on the conditions in case statement. NEW_column及其值应基于case语句中的条件。 When i run this query value is "NEW_column" is returned as NULL. 当我运行此查询值是“ NEW_column”返回为NULL。 Can anyone help me solve this logical error? 谁能帮我解决这个逻辑错误?

You need to write column1 is null similarly column1 is not null 您需要写column1 is null类似column1 is not null

DEMO DEMO

SELECT
   column1,
   column2,
   CASE WHEN column1 is NULL THEN column2
   WHEN column1 is not NULL THEN column1
   END AS NEW_column,
FROM my_table

OUTPUT: OUTPUT:

col1    col2    newcol
3       null    3
null    4       4
5      null     5

It means you don't get any value with your conditions 这意味着您的条件没有任何价值

There are several way to debug the your SQL statement: 有几种方法可以调试SQL语句:

sample 样品

SELECT
column1,
column2,
ISNULL(column1,column2) AS NEW_column 
FROM my_table

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

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