2016-09-14 78 views
0

我正在尋找一次在多個列上運行計數SQL查詢。其中83個。對於每一個,我只是想知道有多少實例,其中的值= 1.使用一個SQL查詢在多列上運行計數

ex。

SELECT COUNT(*)從[filename.filename] 其中[Column001] = 1個

從[filename.filename] COUNT(*),其中[Column002] = 1個

所有數據在每一列中都標有一個0或一個1。

而不是編寫83個小的查詢,有沒有辦法讓我把它全部寫入一個查詢中,並將它們全部顯示爲帶有結果的表格?

+0

顯示數據的樣本和預期的結果,請 – scaisEdge

回答

3

這似乎是你想要什麼:

SELECT SUM(CASE WHEN Column_1 = 1 THEN 1 ELSE 0 END) N_1, 
     SUM(CASE WHEN Column_2 = 1 THEN 1 ELSE 0 END) N_2, 
     SUM(CASE WHEN Column_3 = 1 THEN 1 ELSE 0 END) N_3, 
     ..... 
     SUM(CASE WHEN Column_83 = 1 THEN 1 ELSE 0 END) N_83 
FROM YourTable;