我在UI中有两个单选按钮,并且表中该单选按钮的列可以为空,在getbyid存储过程中,我首先要检查column是否为null,然后返回null,如果不为null,则检查是否为零(否)然后返回零,或者如果它是1(是)然后返回1,我想我必须为此使用嵌套的CASE语句,但无法弄清楚实际的语句,请帮忙吗?我尝试了以下方法:
CASE WHEN TMC.CUSTOMER_ID IS NOT NULL THEN(CASE TMC.CUSTOMER_ID WHEN 0 THEN 0
ELSE 1)
ELSE NULL END AS CustomerId,
答案 0 :(得分:2)
CASE
WHEN TMC.CUSTOMER_ID IS NOT NULL THEN
CASE WHEN TMC.CUSTOMER_ID=0 THEN 0 ELSE 1 END
END as type_pre,
答案 1 :(得分:2)
第二个END
中的CASE
丢失了
CASE
WHEN TMC.CUSTOMER_ID IS NOT NULL
THEN
CASE TMC.CUSTOMER_ID WHEN 0 THEN 0 ELSE 1 END
ELSE NULL
END AS CustomerId,
您可以使用SIGN功能获得相同的结果
SIGN(TMC.CUSTOMER_ID) AS CustomerId
或者如果customerId可能为负,则使用ABS和SIGN
SIGN(ABS(TMC.CUSTOMER_ID)) AS CustomerId
答案 2 :(得分:1)