如果column等于一个值,则使另一列为空

时间:2018-09-17 15:52:19

标签: sql

我试图将查询设置为执行以下操作:当HWTYPE列等于“计算机”时,我希望我的用户名列(如果有值)为空。我将如何实现?这是我所拥有的,但不起作用:

 case when HWTYPE = 'COMPUTER' 
                         THEN USRNAME = ' '
                         end AS NULLTEST,

2 个答案:

答案 0 :(得分:0)

它看起来像这样:

select (case when HWTYPE <> 'COMPUTER' then usrname end) as usrname

这假设HWTYPE不是NULL。可以很容易地扩展逻辑以处理这种情况。

答案 1 :(得分:0)

您的case表达式为:

select (case when HWTYPE = 'COMPUTER' then null else usrname end) as NULLTEST