当目标单元格为空时,如何选择另两个单元格的组合行?



我想通过登录选择一个用户,但如果登录是空的,那么通过名字和姓氏的组合选择。例句:

select * from user 
where login = 'criteria' // or if *login=null* then // where firstName || lastName = 'criteria'

提前谢谢你。

您可以使用coalesce(或Oracle的nvl)如下:

select * from user 
where ('criterion' = coalesce(login, firstname)
or 'criterion' = coalesce(login, lastname))

的另一种方法:

select * from user 
where (login = 'criterion'
or login is null and 'criterion' in (firstname, lastname))

注:user是一个保留字在Oracle中,所以我假设在现实中你有一个不同的表名。如果真的是user,你需要引用它:"USER"

相关内容

  • 没有找到相关文章