关闭

一条记录中包含多个count

标签: sql
434人阅读 评论(0) 收藏 举报
分类:
SELECT 
COUNT(CASE 
WHEN A.CHK_TYPE IN ('1') AND A.TASK_END_STS NOT IN ('4') 
THEN 'frUFCount' 
END) frUFCount,
COUNT(CASE 
WHEN A.CHK_TYPE IN ('1') and A.TASK_END_STS IN ('4') 
THEN 'frcount' 
END) frFcount,
COUNT(CASE 
WHEN A.CHK_TYPE IN ('2') AND A.TASK_END_STS NOT IN ('4') 
THEN 'reUFCount'
END) reUFCount,
COUNT(CASE 
WHEN A.CHK_TYPE IN ('2') and A.TASK_END_STS IN ('4') 
THEN 'reFCount' 
END) reFCount,
COUNT(CASE 
WHEN A.CHK_TYPE IN ('3') AND A.TASK_END_STS NOT IN ('4') 
THEN 'ocUFCount' 
END) ocUFCount,
COUNT(CASE 
WHEN A.CHK_TYPE IN ('3') and A.TASK_END_STS IN ('4') 
THEN 'ocFCount' 
END) ocFCount,
T.displayname 
FROM AFT1_TASK A, tbl_org_user T
where A.mang_no = T.Username
AND A.mang_br_no = '200001'
group by displayname

下面添加翻页功能:
SELECT * 
FROM (SELECT m.*, rownum as rnum
        FROM (SELECT COUNT(CASE
   WHEN A.CHK_TYPE IN ('1') AND
A.TASK_END_STS NOT IN ('4') THEN
'frUFCount'
 END) frUFCount,
   COUNT(CASE
   WHEN A.CHK_TYPE IN ('1') and A.TASK_END_STS IN ('4') THEN
'frcount'
 END) frFcount,
   COUNT(CASE
   WHEN A.CHK_TYPE IN ('2') AND
A.TASK_END_STS NOT IN ('4') THEN
'reUFCount'
 END) reUFCount,
   COUNT(CASE
   WHEN A.CHK_TYPE IN ('2') and A.TASK_END_STS IN ('4') THEN
'reFCount'
 END) reFCount,
   COUNT(CASE
   WHEN A.CHK_TYPE IN ('3') AND
A.TASK_END_STS NOT IN ('4') THEN
'ocUFCount'
 END) ocUFCount,
   COUNT(CASE
   WHEN A.CHK_TYPE IN ('3') and A.TASK_END_STS IN ('4') THEN
'ocFCount'
 END) ocFCount,
displayname
                FROM AFT1_TASK A, tbl_org_user T
                where A.mang_no = T.Username
                AND A.mang_br_no = '200001'
                group by displayname) m
        WHERE rownum < '11')
WHERE rnum >= 1
注意select后面的*号,如果有特殊需求将*改成具体的字段。
0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

COUNT(*)与COUNT(某个字段)的区别,及count(null)和count(distinct 某字段)的用法

由于Oracle在count()的时候,并不计算null(空值)部分,所以和空值结合起来进行统计的时候还是有一些意思。        count这个函数应用的太频繁,有必要深究一番。     ...
  • yansong_8686
  • yansong_8686
  • 2013-12-11 23:15
  • 3313

SQL数据库中查找一条记录是否存在 count(推荐)

最快方法:SELECT top 1 @count=1,同时item_urlkey字段做了聚集索引或非聚集索引 如果语句执行时,不走索引的话,也可以用with(index=IX_t2_col1)指定索...
  • ArvinStudy
  • ArvinStudy
  • 2013-01-10 12:12
  • 2018

MySql——得到ResultSet的记录个数的正确方法

场景: Class.forName("com.mysql.jdbc.Driver"); Connection conn = DriverManager.getConnection("jd...
  • youzhouliu
  • youzhouliu
  • 2016-07-26 17:17
  • 3050

mysql一条sql查出多个条件不同的sum或count

最近做java后台遇到很多问题记录一下,有个需求是在一条sql中同时统计到几条条件不一样的sql或count,希望能帮助到需要的朋友,上代码和效果图: select  sum(pzgwjscd) as...
  • wangshan_1121
  • wangshan_1121
  • 2017-06-16 19:07
  • 924

mysql中一条sql语句中使用多个count关联查询多张表

在给公司写代码的过程中忽然发现在sql语句中碰到一些小问题,虽然最终自己解决了,但是不得不说好不容易啊,故写此博客提醒自己,以免日后再在此处浪费时间。 需求: 有两张表,分别是marketChan...
  • gwd1154978352
  • gwd1154978352
  • 2017-11-22 19:09
  • 222

Jxls导出excel的若干方式总结(八)-- 导出一条查询记录到多个sheet

转载地址:http://blog.csdn.net/hu_shengyang/article/details/6736721 ,有详细的excel操作方法及博客; 注意:suplyArea后...
  • z69183787
  • z69183787
  • 2016-05-14 17:28
  • 1583

Jxls导出excel的若干方式总结(八)-- 导出一条查询记录到多个sheet

注意:suplyArea后跟的是其对应数据库表的列名称。 Sheet1中的模板信息(模板) Sheet2中的模板信息(模板) 代码: List supplyAreaList = ...
  • hu_shengyang
  • hu_shengyang
  • 2011-08-31 17:41
  • 4320

mysql查询最后几条、生成一条包含多条记录、插入语句、差值查询

1、查询第一行记录:  select * from table limit 1  2、查询第n行到第m行记录  select * from table1 limit n-1,m-n;  SELECT ...
  • qq_27657429
  • qq_27657429
  • 2016-12-04 22:16
  • 658

mysql索引合并:一条sql可以使用多个索引

mysql的索引合并并不是什么新特性。早在mysql5.0版本就已经实现。之所以还写这篇博文,是因为好多人还一直保留着一条sql语句只能使用一个索引的错误观念。本文会通过一些示例来说明如何使用索引合并...
  • caomiao2006
  • caomiao2006
  • 2016-08-07 21:16
  • 3171

关于一条机器装多个mysql的详解

大家可能都知道一条机器可以装多个mysql,也知道是通过修改端口号来实现,但是下面我要说的是  深入一点的细节问题(自认为是细节): mysql.exe就是mysql 的客户端登录程序,比如这里你...
  • feihexinhuiyuan
  • feihexinhuiyuan
  • 2016-09-30 19:31
  • 131
    个人资料
    • 访问:122491次
    • 积分:2056
    • 等级:
    • 排名:千里之外
    • 原创:89篇
    • 转载:32篇
    • 译文:0篇
    • 评论:14条
    文章分类
    最新评论