如何排除所有列中具有空值的行



我编写了一个视图查询,需要一个很长的SQL脚本和大量的连接。有些值会导致来自其中一个表的所有列中的空值。

基本上,我的问题有什么方法可以排除最终全部为空的结果吗?

在这种情况下,系统对象可能会有所帮助吗?

有点

黑客,但你可以在最终WHERE中使用concat()

Declare @YourTable table (ID int,colx varchar(50) ,coly varchar(50), colz int)
Insert Into @YourTable values
(1,'aa','bb',25),
(2,'aa',null,50),
(3,null,null,null)
Select *
 From  @YourTable 
 Where concat(colx,coly,colz)>''

**返回**

ID  colx    coly    colz
1   aa      bb      25
2   aa      NULL    50

NOT 可以过滤列中的空值

请参阅 https://learn.microsoft.com/en-us/sql/t-sql/queries/is-null-transact-sql

相关内容

  • 没有找到相关文章

最新更新