日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

实现mysql按月统计的教程

發(fā)布時(shí)間:2025/4/5 数据库 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 实现mysql按月统计的教程 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

From: http://www.jbxue.com/db/758.html

實(shí)現(xiàn)mysql按月統(tǒng)計(jì)的教程

mysql有個(gè)字段是DATETIME類型,要實(shí)現(xiàn)可以按月統(tǒng)計(jì),該怎么寫sql語句?
select month(f1) from tt group by month(f1)
or

select DATE_FORMAT(f1,'%m') from tt group by DATE_FORMAT(f1,'%m')

比如數(shù)據(jù)庫的為2008-01-15 12:10:00
則DATE_FORMAT的參數(shù)格式分別得到的結(jié)果為:
'%Y' 2008
'%Y-%m' 2008-01
'%Y-%c' 2008-1
'%m' 01
'%c' 1

Date_format格式說明:
格式 描述
%a 縮寫星期名
%b 縮寫月名
%c 月,數(shù)值
%D 帶有英文前綴的月中的天
%d 月的天,數(shù)值(00-31)
%e 月的天,數(shù)值(0-31)
%f 微妙
%H 小時(shí)(00-23)
%h 小時(shí)(01-12)
%I 小時(shí)(01-12)
%i 分鐘,數(shù)值(00-59)
%j 年的天(001-366)
%k 小時(shí)(0-23)
%l 小時(shí)(1-12)
%M 月名
%m 月,數(shù)值(00-12)
%p AM或PM
%r 時(shí)間,12-小時(shí)(hh:mm:ss AM或PM)
%S 秒(00-59)
%s 秒(00-59)
%T 時(shí)間, 24-小時(shí)(hh:mm:ss)
%U 周(00-53)星期日是一周的第一天
%u 周(00-53)星期一是一周的第一天
%V 周(01-53)星期日是一周的第一天,與%X使用
%v 周(01-53)星期一是一周的第一天,與%x使用
%W 星期名
%w 周的天(0=星期日, 6=星期六)
%X 年,其中的星期日是周的第一天,4位,與%V使用
%x 年,其中的星期一是周的第一天,4位,與%v使用
%Y 年,4位
%y 年,2位

按季度存數(shù)據(jù)
select YEAR(procurement_dt)*10+((MONTH(procurement_dt)-1) DIV 3) +1, MONTH(procurement_dt) , procurement_dt from xs001
groupbyconcat(date_format(savetime,'%Y'),FLOOR((date_format(savetime,'%m')+2)/3))

另外的按月統(tǒng)計(jì)方式

MySQL-按月統(tǒng)計(jì)數(shù)據(jù)
統(tǒng)計(jì)2010年 每月的資金

select DATE_FORMAT(date,'%Y-%m') as month,sum(money) as money from finance where DATE_FORMAT(date,'%Y')=2010 group by month order by month

1如果周一為一周的第一天,則(小寫) DATE_FORMAT(date,'%x %v')

2如果周日為一周的第一天,則(大寫) DATE_FORMAT(date,'%X %V')

?

統(tǒng)計(jì)每個(gè)星期

select DATE_FORMAT(date,'%x年-第%v周') as week,sum(money) as money from finance_base where DATE_FORMAT(date,'%Y')=2010 group by week;
select ((year(`recview`.`paytime`) * 100) + month(`recview`.`paytime`)) AS `paytime`,sum(`recview`.`rent`) AS `rent` from `recview` group by
((year(`recview`.`paytime`) * 100) + month(`recview`.`paytime`)) order by ((year(`recview`.`paytime`) * 100) + month(`recview`.`paytime`));

您可能感興趣的文章:
Mysql 按年度、季度、月度、周、日統(tǒng)計(jì)查詢的例子
mysql按年度、季度、月度、周、日統(tǒng)計(jì)查詢的sql語句
mysql查詢:上周、月、季度、年和本周、月、季度、年

-----------------------------------------------------------------------------------

From: http://phl.iteye.com/blog/717872

表finance有倆個(gè)字段如下
date date
money double(15,2)
??? 下面需要對表finance的2010年財(cái)務(wù)數(shù)據(jù),按月進(jìn)行統(tǒng)計(jì)

Sql代碼 ?
  • select?DATE_FORMAT(date,'%Y-%m')?as?month,sum(money)?as?money???
  • from?finance???
  • where?DATE_FORMAT(date,'%Y')=2010???
  • group?by?month???
  • order?by?month??

  • ??? 下面是按周統(tǒng)計(jì)
    查看MySQL的manual
    %X Year for the week where Sunday is the first day of the week, numeric, four digits; used with %V
    %x Year for the week, where Monday is the first day of the week, numeric, four digits; used with %v
    ??? 其中
    1如果周一為一周的第一天,則(小寫) DATE_FORMAT(date,'%x %v')
    2如果周日為一周的第一天,則(大寫) DATE_FORMAT(date,'%X %V')

    Sql代碼 ?
  • select?DATE_FORMAT(date,'%x年-第%v周')?as?week,sum(money)?as?money???
  • from?finance_base???
  • where?DATE_FORMAT(date,'%Y')=2010???
  • group?by?week?
  • 總結(jié)

    以上是生活随笔為你收集整理的实现mysql按月统计的教程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。