統計資料sql語句 練習

2021-10-04 02:36:30 字數 2606 閱讀 6373

放假放的太久了,sql語句都忘記了,複習一波!

統計一般都會使用到分組與聚合函式

重點是,確定限制條件來限制,然後在根據需要的資料分組!

例如: 統一商品訂單表裡乙個月各類商品各賣出多少!

先根據開始於結束時間限制在乙個月範圍內,所有需要商品分組,相同資料為一組,統計賣出多少!

select idm.goods_name,

count

(idm.goods_name)

as'賣出數量'

from

`order_idm` idm

where idm.create_date between

# and #

group

by idm.goods_name #根據商品分組,相同為一組

例如: 統計乙個月中每天賣出多少個!

先限制乙個月條件, 然後根據天來分組! 然後聚合函式求數量

select date_format(idm.create_date,

'%d')as

'號',

sum(idm.goods_volume)

as'賣出數量'

from

`mc_order_idm` idm

where idm.create_date between

'2019-10-01 00:00:01'

and'2019-10-31 23:59:59'

group

by date_format(idm.create_date,

'%d'

)

例如: 統計一年中每月銷售額!

先限制條件為那一年,然後根據月份分組,獲取每個月份的資料! 然後聚合函式求和金額

select date_format(idm.create_date,

'%c')as

'月份'

,sum

(idm.actual_amount)

as'每月銷售金額'

from

`mc_order_idm` idm

where idm.create_date between

'2018-01-01 00:00:01'

and'2019-12-31 23:59:59'

group

by date_format(idm.create_date,

'%c'

)

例如: 統計一天每小時的銷售金額!

確定條件是一天的範圍, 然後需要小時的資料就以小時為分組! 然後聚合函式求和金額

select date_format(idm.create_date,

'%k')as

'小時'

,sum

(idm.actual_amount)

as'每月銷售金額'

from

`mc_order_idm` idm

where idm.create_date between

'2019-10-28 00:00:01'

and'2019-10-28 23:59:59'

group

by date_format(idm.create_date,

'%k'

)------------------------也可以使用hour(*time*)---------------------------

select

hour

(idm.create_date)

as'小時'

,sum

(idm.actual_amount)

as'每月銷售金額'

from

`mc_order_idm` idm

where idm.create_date between

'2019-10-28 00:00:01'

and'2019-10-28 23:59:59'

group

byhour

(idm.create_date)

date_format(*date*,*format*)*date根據format*字串 格式化值。

也可以使用其他日期函式:

dayofmonth(*date*)

傳回的月份中的某天, *date*範圍131,或傳回0日期為零的日期(例如'0000-00-00'或)'2008-00-00'

等等…在官網

SQL統計資料量

很多時候遇到統計資料的問題,比如統計半年,每個月,每天24小時等等。每月 假定資料庫中為varchar2,如20160331165124.474 select cyear,cmonth,cday chour,cmin,count 1 from select from select to date s...

分組統計資料

with a as select convert varchar 10 starttime,120 starttime,case when organid like 0226 then else 非 end as deptname,sum case when billableseconds 0 th...

oracle查詢統計資料

oracle 按每天,每週,每月,每季度,每年查詢統計資料 按天統計 select count dataid as 每天運算元量,sum from tablename group by trunc createtime,dd 按自然周統計 select to char date,iw sum fro...