假設(shè)你的表為 ta 日期字段是 dt
保靖網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)公司,保靖網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為保靖千余家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站制作要多少錢(qián),請(qǐng)找那個(gè)售后服務(wù)好的保靖做網(wǎng)站的公司定做!
那么,以 2015-01-01為起始日,每5天累總計(jì)數(shù)為:
select datediff(dt, '2015-01-01') div 5 as d5 , count(*)
from ta
group by (datediff(dt, '2015-01-01') div 5)
SELECT DATE_FORMAT(time,'%Y-%m-%d') as day, sum(case when amount0 then amount when amount=0 then 0 end) as amount1
from table where time='2014-11-01' group by day;
我沒(méi)有測(cè)試。time表示日期,amount表示數(shù)量。查詢11月后每天成交數(shù)量
SELECT?uptime,?CASE?WHEN?datepart(hour,uptime)?IN?(0,1)?THEN?1?
WHEN?datepart(hour,uptime)?IN?(2,3)?THEN?2
WHEN?datepart(hour,uptime)?IN?(4,5)?THEN?3
WHEN?datepart(hour,uptime)?IN?(6,7)?THEN?4
WHEN?datepart(hour,uptime)?IN?(8,9)?THEN?5
WHEN?datepart(hour,uptime)?IN?(10,11)?THEN?6
WHEN?datepart(hour,uptime)?IN?(12,13)?THEN?7
WHEN?datepart(hour,uptime)?IN?(14,15)?THEN?8
WHEN?datepart(hour,uptime)?IN?(16,17)?THEN?9
WHEN?datepart(hour,uptime)?IN?(18,19)?THEN?10
WHEN?datepart(hour,uptime)?IN?(20,21)?THEN?11
WHEN?datepart(hour,uptime)?IN?(22,23)?THEN?12
ELSE?0?END?AS?sq
FROM?bak_dircost0901
-------------------------------
uptime?sq
2014/8/19?9:20:59?5
2014/8/22?20:31:20?11
2014/8/22?20:33:08?11
2014/8/26?13:48:01?7
2014/8/27?16:10:45?9
在開(kāi)發(fā)中遇到如下問(wèn)題:現(xiàn)地的OPC采集數(shù)據(jù)的頻率是5分鐘一次,通過(guò)數(shù)據(jù)同步的方式同步到業(yè)務(wù)庫(kù),以圖表的形式展示給業(yè)務(wù)人員。因?yàn)閿?shù)據(jù)量較大,把每一條數(shù)據(jù)都展示出來(lái)導(dǎo)致頁(yè)面數(shù)據(jù)太多。業(yè)務(wù)人員提出按每半小時(shí)取一條數(shù)據(jù),各項(xiàng)指標(biāo)取這半小時(shí)內(nèi)的平均值。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 原數(shù)據(jù)展示
1,按半小時(shí)分組就是將半小時(shí)內(nèi)的時(shí)間劃為一組。即2020-05-01 00:00 --2020-05-01 00:25 這些數(shù)據(jù)將被分到2020-05-01 00:00 這一組
2,先利用UNIX_TIMESTAMP函數(shù)將tm字段轉(zhuǎn)化成秒,其表示從1970-01-01 00:00:00到tm所經(jīng)歷的秒數(shù),對(duì)其做半小時(shí)的向下取整,最后再做Group by。
1800秒:半小時(shí)
floor(t.tm/1800) : 對(duì)于半小時(shí)的個(gè)數(shù)做向下取整
floor(t.tm/1800) * 1800: 取得整半小時(shí)的時(shí)間
3,對(duì)具體的監(jiān)測(cè)值再做處理。我這里只要對(duì)這個(gè)時(shí)間段內(nèi)的取平均數(shù)就行了。經(jīng)過(guò)調(diào)整,達(dá)到業(yè)務(wù)人員的需求。