mysql 一條語句多種count如何寫
問題描述
現在的統計是這樣寫的
select column1 title,count(1) count1FROM table1WHERE column2 is not nullAND column2 > ’2016-06-13’AND column2 < ’2016-06-28’AND column3 is not nullgroup BY titlehaving count1 > 3000
現在要再加一列統計,數據是在這個基礎上再加一個條件過濾,大概就是要下面這樣的效果,要怎么寫?
select column1 title,count(1) count1,count(column3=’abc’) count2FROM table1WHERE column2 is not nullAND column2 > ’2016-06-13’AND column2 < ’2016-06-28’AND column3 is not nullgroup BY titlehaving count1 > 3000
問題解答
回答1:select column1 title,count(1) count1, sum(IF(column3=’abc’, 1, 0)) count2FROM table1WHERE column2 > ’2016-06-13’AND column2 < ’2016-06-28’AND column3 is not nullgroup BY titlehaving count1 > 3000
試試看條件中的column2 is not null沒用,可以去掉。
回答2:樓上正解,也可以試試這個,結果是一樣的
select column1 title,count(1) count1,count(column3=’abc’ or null) count2FROM table1WHERE column2 between ’2016-06-14’ and ’2016-06-27’AND column3 is not nullgroup BY titlehaving count(1) > 3000 -- 用別名count1會報錯的,這里不能用別名
相關文章:
1. spring-mvc - spring-session-redis HttpSessionListener失效2. html5和Flash對抗是什么情況?3. 運行python程序時出現“應用程序發生異常”的內存錯誤?4. javascript - QQ第三方登錄的問題5. node.js - mongodb查找子對象的名稱為某個值的對象的方法6. 測試自動化html元素選擇器元素ID或DataAttribute [關閉]7. 在mac下出現了兩個docker環境8. 利用IPMI遠程安裝centos報錯!9. javascript - 在 model里定義的 引用表模型時,model為undefined。10. 淺談Vue使用Cascader級聯選擇器數據回顯中的坑

網公網安備