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. html5 - 最近在自学react 求一个react表单提交的例子2. android - 继承一个BaseAdapter类后重写了一些方法,但是这些方法在父类中找不到,这是为什么?3. angular.js - Angular路由和express路由的组合使用问题4. Java IO流-InputStream是抽象类,也能调方法?(如图)5. node.js - webpack-dev-server正常运行,webpack打包却出错,怎么办?6. html - jQuery 移动端横向滚动会带动网页上下滑动怎么办?7. 老师 我是一个没有学过php语言的准毕业生 我希望您能帮我一下8. javascript - 前端如何通过ajax和node.js交互?9. javascript - iscroll实例化未知个数的内容块时怎么办?10. 这段代码既不提示错误也看不到结果,请老师明示错在哪里,谢谢!
