mysql 一條語句多種count如何寫
問題描述
現(xiàn)在的統(tǒng)計(jì)是這樣寫的
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
現(xiàn)在要再加一列統(tǒng)計(jì),數(shù)據(jù)是在這個(gè)基礎(chǔ)上再加一個(gè)條件過濾,大概就是要下面這樣的效果,要怎么寫?
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:樓上正解,也可以試試這個(gè),結(jié)果是一樣的
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會(huì)報(bào)錯(cuò)的,這里不能用別名
相關(guān)文章:
1. boot2docker無法啟動(dòng)2. node.js - antdesign怎么集合react-redux對input控件進(jìn)行初始化賦值3. 老師,按tab鍵不起作用怎么回事4. 關(guān)于docker下的nginx壓力測試5. mysql - InnoDB中的鎖6. angular.js - Angular開發(fā)的單頁面應(yīng)用,如何正確地實(shí)現(xiàn)在微信里的網(wǎng)頁授權(quán)和調(diào)用js sdk7. python - django的model字段在保存的時(shí)候做預(yù)處理怎么辦?8. html - input中radio為什么多選9. javascript - sublime快鍵鍵問題10. python - for循環(huán)print怎樣才能輸出csv呢

網(wǎng)公網(wǎng)安備