假設一個簡單的例子,例如表bug
有一列status
,可以是open
,fixed
等
如果我想知道有多少錯誤是開放的,我只是做:以1行和不同列顯示結果
select count(*) as open_bugs from bugs where status = 'open';
如果我想知道有多少蟲子打開我簡單地做:
select count(*) as closed_bugs from bugs where status = 'closed';
如果什麼都想知道多少開多少收存在這樣的返回查詢的2列的結果,即
Open | Closed|
60 180
這樣做的最佳方法是什麼? UNION
串接的結果,所以它不是我想要
的情況下基本上越過每一行並創建一個1/0s的「不可見」行,並在外部的'select'中加上它們,對吧? – Cratylus
是的,這將返回1匹配的條件和null爲他人。當你計算它會做計數有價值的行 –