SQL统计语句记录

1.达梦数据库

统计指定单位的12个月份的业务数据

sql 复制代码
SELECT 
      a.DEPT_ID, b.dept_name, a.USER_NAME, count(a.dept_id) as count, 
      sum(case when  to_char(a.CREATE_TIME,'yyyy-mm') = '2023-01' THEN '1' else '0' end) as one,
      sum(case when  to_char(a.CREATE_TIME,'yyyy-mm') = '2023-02' THEN '1' else '0' end) as two,
      sum(case when  to_char(a.CREATE_TIME,'yyyy-mm') = '2023-03' THEN '1' else '0' end) as three,
      sum(case when  to_char(a.CREATE_TIME,'yyyy-mm') = '2023-04' THEN '1' else '0' end) as four,
      sum(case when  to_char(a.CREATE_TIME,'yyyy-mm') = '2023-05' THEN '1' else '0' end) as five,
      sum(case when  to_char(a.CREATE_TIME,'yyyy-mm') = '2023-06' THEN '1' else '0' end) as six,
      sum(case when  to_char(a.CREATE_TIME,'yyyy-mm') = '2023-07' THEN '1' else '0' end) as seven,
      sum(case when  to_char(a.CREATE_TIME,'yyyy-mm') = '2023-08' THEN '1' else '0' end) as eight,
      sum(case when  to_char(a.CREATE_TIME,'yyyy-mm') = '2023-09' THEN '1' else '0' end) as nine,
      sum(case when  to_char(a.CREATE_TIME,'yyyy-mm') = '2023-10' THEN '1' else '0' end) as ten,
      sum(case when  to_char(a.CREATE_TIME,'yyyy-mm') = '2023-11' THEN '1' else '0' end) as eleven,
      sum(case when  to_char(a.CREATE_TIME,'yyyy-mm') = '2023-12' THEN '1' else '0' end) as twelve
FROM 
    SYS_USER  as a
    left join sys_dept as b
     on a.dept_id = b.dept_id
WHERE 
     a.CREATE_TIME >='2023-01-01' AND a.CREATE_TIME <= '2023-12-31' 
     group by a.dept_id, b.dept_name,  user_name
相关推荐
bug菌¹31 分钟前
滚雪球学Oracle[4.2讲]:PL/SQL基础语法
数据库·oracle
逸巽散人41 分钟前
SQL基础教程
数据库·sql·oracle
月空MoonSky1 小时前
Oracle中TRUNC()函数详解
数据库·sql·oracle
momo小菜pa1 小时前
【MySQL 06】表的增删查改
数据库·mysql
向上的车轮2 小时前
Django学习笔记二:数据库操作详解
数据库·django
编程老船长2 小时前
第26章 Java操作Mongodb实现数据持久化
数据库·后端·mongodb
Mephisto.java2 小时前
【力扣 | SQL题 | 每日四题】力扣2082, 2084, 2072, 2112, 180
sql·算法·leetcode
全栈师3 小时前
SQL Server中关于个性化需求批量删除表的做法
数据库·oracle
Data 3173 小时前
Hive数仓操作(十七)
大数据·数据库·数据仓库·hive·hadoop
BergerLee4 小时前
对不经常变动的数据集合添加Redis缓存
数据库·redis·缓存