2017-02-14 38 views
0

快速問題,可能有一個二進制答案。如何非特定地過濾NULL值的列?

鑑於以下:

columnA columnB columnC column..? columnZ 
1  2  NULL 2   2 
2  2  NULL NULL  2  
3  NULL  NULL 2   NULL 

有沒有一種方法,我可以寫一個查詢,將只顯示沒有一個總的合併NULL結果列?類似於:

從x.table中選擇(IS NOT NULL)where columnZ = 2;

回報:

columnA columnB column..? columnZ 
1  2  2   2 
2  2  NULL  2  

消除無用columnC其中有沒有可用的數據,而無需專門引用它,因爲我之前運行查詢,我不知道哪些列將包含有用的數據?

乾杯!

+1

有沒有簡單的方法。您只能使用動態SQL來執行此操作,因爲SQL查詢在'SELECT'中有一組固定的命名列。 –

+0

乾杯,我會看看那個。在這一點上,雖然它開始變得越來越過分。我只是不想滾動右堆。 – averagescripter

+0

**爲什麼**你需要這樣做?無論你想要解決什麼問題,你認爲這是正確的解決方案嗎? – mathguy

回答

0

那麼你可以做的是運行一個選擇語句,其中類別不爲空。哪個會返回那個特定類別的非空值的列。或者你運行一個選擇語句,其中類別IS NULL,並根據條件刪除該列。因爲有多個類別你需要檢查每個類別。