在CASE WHEN SQL语句中是否可以合并两个条件?

问题描述 投票:0回答:2

我正在为SQL数据创建一个是/否标志,并且我有类似以下内容:

'''col_name为NULL或col_name = 0则为“ N”的情况否则为“ Y”END AS col_name_flag'''

有没有什么方法可以更简洁,所以我不必两次写出列名?许多列名都很长,所以我想知道是否有办法使它在视觉上更令人愉悦。

sql null conditional-statements case-when multiple-conditions
2个回答
1
投票

可能最简单的方法是反转比较:

(CASE WHEN col_name <> 0 THEN 'Y' ELSE 'N' END) AS col_name_flag

0
投票

您也可以使用:

CASE IsNull(col_name,0) =0 THEN 'N' ELSE 'Y' END as col_name_flag

但是我会选择戈登对性能的回答...

© www.soinside.com 2019 - 2024. All rights reserved.