SQL先計算再聚合與先聚合再計算之間的區別

做客戶分析的時候遇到了一個小問題,要統計客戶的性別,但是有些客戶的性別爲空(empty)。所以要統計下有性別標記的客戶有多少。寫了兩個SQL。 三行數據,兩行GOOD分別對應男性和女性。兩個查詢產生不同的原因在於CASE語句計算是發生在聚合操作之前還是之後。第一個CASE發生在聚合之前,第二個發生在聚合之後。所以要注意如果對應的GROUP BY 子句沒有使用相同的表達式,聚合操作可能不會減少數據行
相關文章
相關標籤/搜索