guanxf

我的博客:http://blog.sina.com.cn/17learning

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  71 随笔 :: 1 文章 :: 41 评论 :: 0 Trackbacks
如下两条常用sql,统计分类数据,你能说出区别吗?
一、常用sql一:
select 
r.cid,
r.depart_id,
r.employ_id,
r.create_by,
count(DISTINCT r.form_type) as dailyReportNum
FROM 
report r
where 
1=1 
GROUP BY 
r.employ_id

二、常用sql二:
select 
r.cid,
r.depart_id,
r.employ_id,
r.create_by,
sum(case WHEN df.form_type=1 then 1 else 0 end ) as dailyReportNum
FROM 
report r
where 
1=1 
GROUP BY 
r.employ_id


posted on 2014-09-18 17:05 管先飞 阅读(3582) 评论(4)  编辑  收藏 所属分类: Database

评论

# re: 小白学sql-分组统计sum和count的用法 2014-09-23 20:40 名皮网
多谢分享,先收藏了,等吃好饭再研究  回复  更多评论
  

# re: 小白学sql-分组统计sum和count的用法 2014-09-23 21:00 java论坛
虽然我干了这么多年的java开发工作,但第二种还是第一次见,可能是一直也只有增删改查的原因吧!不太明白case 在sql程序中的作用!!  回复  更多评论
  

# re: 小白学sql-分组统计sum和count的用法 2014-09-23 21:34 管先飞
@java论坛
第一种:统计该人员该种类型的数量。
第二种:统计该人员,类型值为1的数量。  回复  更多评论
  

# re: 小白学sql-分组统计sum和count的用法 2014-10-15 14:43 德星
小白不简单  回复  更多评论
  


只有注册用户登录后才能发表评论。


网站导航: