在我的表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.