加入收藏 | 设为首页 | 会员中心 | 我要投稿 拼字网 - 核心网 (https://www.hexinwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 如何检测和删除仅包含空值的列?

发布时间:2021-03-15 18:49:54 所属栏目:MsSql教程 来源:网络整理
导读:在我的表table1中有6列Locations,a,b,c,d,e. Locations [a] [b] [c] [d] [e][1] 10.00 Null Null 20.00 Null[2] Null 30.00 Null Null Null 我需要结果如 Locations [a] [b] [d][1] 10.00 Null 20.00[2] Null 30.00 Null 我的问题是如何使用sql查询检测和删除

在我的表table1中有6列Locations,a,b,c,d,e.

Locations [a]   [b]   [c]  [d]   [e]

[1]       10.00 Null  Null 20.00 Null

[2]       Null  30.00 Null Null  Null

我需要结果如

Locations [a]   [b]   [d]

[1]       10.00 Null  20.00

[2]       Null  30.00 Null

我的问题是如何使用sql查询检测和删除包含所有空值的列.
可能吗?

如果是,请帮助并提供样品.

解决方法

如何检测给定列是否只有NULL值:
SELECT 1  -- no GROUP BY therefore use a literal
  FROM Locations
HAVING COUNT(a) = 0 
       AND COUNT(*) > 0;

结果集将包含零行(列a具有非NULL值)或一行(列a仅具有NULL值). FWIW此代码是标准SQL-92.

(编辑:拼字网 - 核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读