Oracle 数据库 计算一张表每个时间段(月、季等)表内全部数据的总数以及当段时间内的总数 |
您所在的位置:网站首页 › oracle按季度统计数据 › Oracle 数据库 计算一张表每个时间段(月、季等)表内全部数据的总数以及当段时间内的总数 |
注:本文中的SQL语句,皆在Oracle数据库中验证可用,几大主流数据库的SQL语句相近,其余数据库,各位可自行修改验证~ 需求: 一张表,第一个月录入数据100条,第二个月录入数据150条,第三个月录入数据200条; 需要得出的结果:1 100 2 250 3 450 以下是每段时间内,各自的数据总数的SQL SELECT DISTINCT HIRE_YEAR_MONTH, COUNT_ FROM ( SELECT TO_CHAR(create_date, 'yyyy/mm') HIRE_YEAR_MONTH, COUNT(*) OVER(PARTITION BY TO_CHAR(create_date, 'yyyy/mm')) AS COUNT_ FROM TableName ) a group by a.HIRE_YEAR_MONTH,a.count_ 此段SQL只能得出: 1 100 2 150 3 200 并不能达到我们的需求 以下为统计全表数据总数在【有数据变化】每个月内的Count,即第二个月需要包含自身和第一个月的总数,第三个月要包含自身和前两个月的总数: SELECT distinct TO_CHAR(a.create_date, 'yyyymm'), (SELECT count (*) FROM gp_equ2_list b WHERE TO_CHAR(b.create_date, 'yyyymm') |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |