前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >原 收集SQL语句统计每天、每月、每年的数

原 收集SQL语句统计每天、每月、每年的数

作者头像
霡霂
发布2018-06-04 15:25:33
3.7K0
发布2018-06-04 15:25:33
举报
文章被收录于专栏:雨过天晴雨过天晴

1、每年

代码语言:javascript
复制
select year(ordertime) as year,count(*) as count
from 订单表
group by year(ordertime)

2、每月

代码语言:javascript
复制
select year(ordertime) as year,
month(ordertime) as month,
sum(Total) as sun_total
from 订单表
group by year(ordertime),
month(ordertime)

3、每日

代码语言:javascript
复制
select year(ordertime) as year,
month(ordertime) as month,
day(ordertime) as day,
sum(Total) as sum_total
from 订单表
group by year(ordertime),
month(ordertime),
day(ordertime)

另外每日也可以这样:

代码语言:javascript
复制
select convert(char(8),ordertime,112) dt,
sum(Total) 销售合计
from 订单表
group by convert(char(8),ordertime,112)

例一:

查2010年3月份每天的记录(这里date的格式是YYYY-mm-dd hh:mm:ss)

代码语言:javascript
复制
select count(*),substr(t.date,1,10)  from table t where  t.date like '2010-03%' group by substr(t.date,1,10)

例二:

sql 数据分月统计,表中只有每天的数据,现在要求求一年中每个月的统计数据(一条sql)

代码语言:javascript
复制
SELECT
  MONTH (  那个日期的字段  ),
  SUM(  需要统计的字段, 比如销售额什么的 )
FROM
  表
WHERE
  YEAR (  那个日期的字段  ) = 2010   -- 这里假设你要查 2010年的每月的统计。
GROUP BY
 MONTH (  那个日期的字段  )

用SELECT语句对数据进行统计汇总

代码语言:javascript
复制
avg ([ALL|DISTINCT]列名) 求指定数字字段的平均值
sum ([ALL|DISTINCT]列名) 求指定数字字段的总和
max([ALL|DISTINCT]列名) 求指定数字字段中最大值
min ([ALL|DISTINCT]列名) 求指定数字字段中最小值
count([ALL|DISTINCT]列名) 求满足条件记录中指定字段不为空的记录个数
count(*)    求满足条件记录总数
代码语言:javascript
复制
**********************************************************************************************
用GROUP BY子句对记录分类统计汇总
格式:
   GROUP BY 分组字段名列表[HAVING 条件表达式] 
   功能:按指定条件对指定字段依次分组进行统计汇总

注:
   使用GROUP BY 的语句仍可用ORDER BY子句排序 
   但必须在GROUP BY之后可以使用别名但不允许对SELECT没指定的列排序
   HAVING子句是对分组统计后的查询结果进行筛选.
   使用GROUP BY 的select语句仍可用WHERE子句指定条件
**********************************************************************************************
说明:
    Select 指定的字段必须包含且只含GROUP BY子句中指定的分组字段(可以为它指定别名),
    其他必须是由集合函数组成的一个或多个计算列,统计函数中所使用的列不受限制.
    GROUP BY子句中不允许使用字段或计算列的别名,可直接使用表达式.
    GROUP BY子句指定表达式时,select指定的字段中可以不包括该表达式.
    HAVING子句不允许使用别名
    HAVING子句必须和GROUP BY一起使用,且设置的条件必须与GROUP BY 子句指定的分组字段有关
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档