一个常用的报表统计SQL语句

2023年 4月 17日 38.8k 0

一般都给定按日期区间统计某一值,每一个列就是统计时的分类。如下图: 下面给出上图的例子的sql语句写法:(注:此处是按“日期”字段统计) 复制代码 代码如下: select 日期,自选字

一般都给定按日期区间统计某一值,每一个列就是统计时的分类。如下图:

下面给出上图的例子的sql语句写法:(注:此处是按“日期”字段统计) 复制代码 代码如下: select 日期,自选字段1,自选字段2,sum(类型1) 类型1,sum(类型2) 类型2,sum(类型3) 类型3,sum(类型4) 类型4,sum(类型5) 类型5,sum(类型6) 类型6 from ( select to_date(to_char(日期,'yyyy-MM-dd'),'yyyy-mm-dd') 日期,自选字段1,自选字段2,count(主键字段) 类型1,0 类型2,0 类型3,0 类型4,0 类型5,0 类型6 from 表名 where 1=1 group by to_date(to_char(日期,'yyyy-MM-dd'),'yyyy-mm-dd'),自选字段1,自选字段2 union all select to_date(to_char(日期,'yyyy-MM-dd'),'yyyy-mm-dd') 日期,自选字段1,自选字段2,0 类型1,count(主键字段) 类型2,0 类型3,0 类型4,0 类型5,0 类型6 from 表名 where 1=1 group by to_date(to_char(日期,'yyyy-MM-dd'),'yyyy-mm-dd'),自选字段1,自选字段2 union all select to_date(to_char(日期,'yyyy-MM-dd'),'yyyy-mm-dd') 日期,自选字段1,自选字段2,0 类型1,0 类型2,count(主键字段) 类型3,0 类型4,0 类型5,0 类型6 from 表名 where 1=1 group by to_date(to_char(日期,'yyyy-MM-dd'),'yyyy-mm-dd'),自选字段1,自选字段2 union all select to_date(to_char(日期,'yyyy-MM-dd'),'yyyy-mm-dd') 日期,自选字段1,自选字段2,0 类型1,0 类型2,0 类型3,count(主键字段) 类型4,0 类型5,0 类型6 from 表名 where 1=1 group by to_date(to_char(日期,'yyyy-MM-dd'),'yyyy-mm-dd'),自选字段1,自选字段2 union all select to_date(to_char(日期,'yyyy-MM-dd'),'yyyy-mm-dd') 日期,自选字段1,自选字段2,0 类型1,0 类型2,0 类型3,0 类型4,count(主键字段) 类型5,0 类型6 from 表名 where 1=1 group by to_date(to_char(日期,'yyyy-MM-dd'),'yyyy-mm-dd'),自选字段1,自选字段2 union all select to_date(to_char(日期,'yyyy-MM-dd'),'yyyy-mm-dd') 日期,自选字段1,自选字段2,0 类型1,0 类型2,0 类型3,0 类型4,0 类型5,count(主键字段) 类型6 from 表名 where 1=1 group by to_date(to_char(日期,'yyyy-MM-dd'),'yyyy-mm-dd'),自选字段1,自选字段2 ) where 1=1 group by to_date(to_char(日期,'yyyy-MM-dd'),'yyyy-mm-dd'),自选字段1,自选字段2 这里的自选字段1,自选字段2可以自己随意增加,需要注意的是在group by 后面也要同时带上增加的自选字段。

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论