Sql 在select案例中检查NULL

Sql 在select案例中检查NULL,sql,sql-server,tsql,sql-server-2012,Sql,Sql Server,Tsql,Sql Server 2012,当n.ownerid为null时,它将永远不会执行此部分: ...........,case n.ownerid when NULL then ( select systemuserid from crm_systemuserbase where firstname = 'CRM' and lastname='Admin' )........... 下面是更详细的代码: ,case n.ownerid when NULL then

当n.ownerid为null时,它将永远不会执行此部分:

...........,case n.ownerid
    when NULL then 
    (
    select systemuserid
    from crm_systemuserbase 
    where firstname = 'CRM' and lastname='Admin' 
)...........
下面是更详细的代码:

,case n.ownerid
    when NULL then 
    (
    select systemuserid
    from crm_systemuserbase 
    where firstname = 'CRM' and lastname='Admin'
    )
    when '6e99ff04-f498-e311-93f3-005056a37b31' then
    (
    select systemuserid
    from crm_systemuserbase 
    where firstname = 'CRM' and lastname='Admin'
    )
    end as OwnerID

在选定的情况下,如何检查字段问题的值是否为空?

在与
空值进行比较时,使用
is
运算符

case when n.ownerid is null then ...
     when n.ownerid = '6e99ff04-f498-e311-93f3-005056a37b31' then ...
end as OwnerID
您还可以使用以下表达式:

CASE when COALESCE(n.ownerid, '(nullVal)') = '(nullVal)' . . .

可能需要指出的是,这意味着您必须从一个简单的
CASE
表达式切换到一个搜索的
CASE
表达式