SQL統計資料量

2021-07-11 01:18:00 字數 2395 閱讀 5945

很多時候遇到統計資料的問題,比如統計半年,每個月,每天24小時等等。 每月

假定資料庫中為varchar2,如20160331165124.474

select cyear, cmonth,

--, cday ,chour,cmin,

count(1) from (

select * from(

select to_date(substr(o.create_iodt,0,8),'yyyy-mm-dd') create_date, substr(create_iodt,0, 4) cyear, substr(create_iodt,5, 2) cmonth, substr(create_iodt,7, 2) cday ,substr(create_iodt,9, 2) chour,substr(create_iodt,11, 2) cmin, o.*

from sps_order o where o.order_type_id = 'ep' and o.is_root = 1 and

o.create_iodt > to_char(sysdate-220,'yyyymmddhh24miss') ||'.000'

) where create_date > add_months(sysdate,-5)

) where cyear = '2015' or cyear = '2016'

group by cyear, cmonth order by cyear, cmonth;

通過substr()函式對日期串進行擷取,獲取年、月、日、小時及分鐘。注意,我的db是oracle的,所以從0擷取和從1擷取是一樣的。

sysdate-220獲取早於當前220天的時間。

add_months(sysdate, -5) 在當前月份上進行減5.

對cyear, cmonth進行group,同時使用count(1)對行進行統計。獲取每個月的資料量。 每天

同樣,統計每天資料量如下:

select cyear, cmonth,

cday ,--chour,cmin,

count(1) from (

select * from(

select to_date(substr(o.create_iodt,0,8),'yyyy-mm-dd') create_date, substr(create_iodt,0, 4) cyear, substr(create_iodt,5, 2) cmonth, substr(create_iodt,7, 2) cday ,substr(create_iodt,9, 2) chour,substr(create_iodt,11, 2) cmin, o.*

from sps_order o where o.order_type_id = 'ep' and o.is_root = 1 and

o.create_iodt > to_char(sysdate-220,'yyyymmddhh24miss') ||'.000'

) where create_date > add_months(sysdate,-5)

) where cyear = '2015' or cyear = '2016'

group by cyear, cmonth, cday order by cyear, cmonth, cday;

每小時

統計某月每天每小時資料量

select cyear, cmonth,

cday ,chour,--cmin,

count(1) from (

select * from(

select to_date(substr(o.create_iodt,0,8),'yyyy-mm-dd') create_date, substr(create_iodt,0, 4) cyear, substr(create_iodt,5, 2) cmonth, substr(create_iodt,7, 2) cday ,substr(create_iodt,9, 2) chour,substr(create_iodt,11, 2) cmin, o.*

from sps_order o where o.order_type_id = 'ep' and o.is_root = 1 and

o.create_iodt > to_char(sysdate-220,'yyyymmddhh24miss') ||'.000'

) where create_date > add_months(sysdate,-5)

) where cyear = '2016' and cmonth = '04'

group by cyear, cmonth, cday,chour order by cyear, cmonth, cday, chour;

SQLServer 統計資料量

做乙個專案,第一件事情就是問 這個資料庫多大?下面是統計資料庫資料量大小的方法 通常我們會使用命令 sp helpdb dbname 例如,查詢資料庫 testdb3 的使用量 sp helpdb 是最常用的命令,但是注意 該命令顯示的資料庫大小 db size 並不是指現存有效資料的大小,而是指 ...

SQLServer 統計資料量

做乙個專案,第一件事情就是問 這個資料庫多大?下面是統計資料庫資料量大小的方法 通常我們會使用命令 sp helpdb dbname 例如,查詢資料庫 testdb3 的使用量 sp helpdb 是最常用的命令,但是注意 該命令顯示的資料庫大小 db size 並不是指現存有效資料的大小,而是指 ...

mysql 根據條件統計資料量

目錄 需求 統計總數,未完成數和完成數 方法一 方法二 總結 create table test task id int 11 not null auto increment,done tinyint 1 default null comment 是否完成 donetime int 11 defau...