SQL语句统计每天、每月、每年的 数据

1、每年
select year(ordertime) 年,
sum(Total) 销售合计
from 订单表
group by year(ordertime)

2、每月
select year(ordertime) 年,
month(ordertime) 月,
sum(Total) 销售合计
from 订单表
group by year(ordertime),
month(ordertime

3、每日
select year(ordertime) 年,
month(ordertime) 月,
day(ordertime) 日,
sum(Total) 销售合计
from 订单表
group by year(ordertime),
month(ordertime),
day(ordertime)

另外每日也可以这样:
select convert(char(8),ordertime,112) dt,
sum(Total) 销售合计
from 订单表
group by convert(char(8),ordertime,112)

sql题 如何统计查询一个月中每天的记录

怎么写啊?写出来啊!  比如说要查2010年3月份每天的记录

答案

select count(*),substr(t.date,1,10)  from table t where  t.date like ‘2010-03%‘ group by substr(t.date,1,10)

这里date的格式是YYYY-mm-dd hh:mm:ss

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

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

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

用SELECT语句对数据进行统计汇总
集合函数(聚合函数,统计函数)
为了有效处理查询得到的数据集合,SQL Server提供了一系列统计函数.

这些函数可以实现数据集合和汇总:
avg ([ALL|DISTINCT]列名求指定数字字段的平均值
sum ([ALL|DISTINCT]
列名求指定数字字段的总和
max([ALL|DISTINCT]
列名求指定数字字段中最大值
min ([ALL|DISTINCT]
列名求指定数字字段中最小值
count([ALL|DISTINCT]
列名求满足条件记录中指定字段不为空的记录个数
count(*)    
求满足条件记录总数
**********************************************************************************************
用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 子句指定的分组字段有关

原文地址:http://www.cnblogs.com/Fooo/p/3435687.html

时间: 2024-10-31 16:40:25

SQL语句统计每天、每月、每年的 数据的相关文章

oracle sql语句取得本周本月本年的数据

[sql] --国内从周一到周日 国外是周日到周六  select to_char(sysdate-1,'D') from dual;--取国内的星期几 去掉减一取国外的星期-- [sql] --取本周时间内的数据  select * from table  where DTIME >=trunc(next_day(sysdate-8,1)+1) and DTIME<=trunc(next_day(sysdate-8,1)+7)+1 ;     select * from table  whe

使用SQL语句清空数据库所有表的数据

近来发现数据库过大,空间不足,因此打算将数据库的数据进行全面的清理,但表非常多,一张一张的清空,实在麻烦,因此就想利用SQL语句一次清空所有数据.找到了三种方法进行清空.使用的数据库为MS SQL SERVER.1.搜索出所有表名,构造为一条SQL语句 declare @trun_name varchar(8000)set @trun_name='' select @trun_name=@trun_name + 'truncate table ' + [name] + ' ' from syso

简单Sql语句统计每年每个月的数据,每个月为数据的每列,简单SQL练习

有一张表,数据如下 请写出结果为以下的SQL语句. 在mysql中创建表 CREATE TABLE `aa` (  `id` int(10) NOT NULL AUTO_INCREMENT COMMENT '书籍编号',  `year` varchar(4) NOT NULL DEFAULT '' COMMENT '年',  `month` varchar(2) NOT NULL DEFAULT '0' COMMENT '月份',  `mount` double DEFAULT NULL COM

sql语句复习(基础-提升-技巧-经典数据开发案例-sql server配置)

1 基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:mssql7backupMyNwind_1.dat'--- 开始 备份BACKUP DATABASE pubs TO testBack 4.说明:创建新表 cre

使用sql语句查询日期在一定时间内的数据

使用sql语句查询日期在一周内的数据 select * from ShopOrder where datediff(week,ordTime,getdate()-1)=0   //查询当天日期在一周年的数据 select * from ShopOrder where datediff(day,ordTime,getdate()-1)=0   //查询当天的所有数据 SELECT * FROM A where datediff(d,datetime,getdate()) <=30 //前30天 S

数据库SQL语句查询指定时间段内的数据

[摘要]有的时候,我们需要查询数据库某段时间之间的数据,比如2016年5月1号到到5月3号之间用户注册数量(特殊节假日期间)等.那么用SQL语句如何实现呢? 首先,数据表中的存时间的字段比如是addtime可能是时间戳(varchar),也可能是用timestamp类型表示,如果是时间戳格式当然好办,如果是timestamp格式:YYYY-MM-DD HH:II:SS这个格式,如2016-05-01 00:00:00这种格式的SQL语句怎么表示?有下面两张方式: (1)第一种方法,使用关键字be

python连接SQLServer数据库,执行给定的查询SQL语句,并返回查询结果数据

import sys import pymssql reload(sys) sys.setdefaultencoding("utf-8") #数据库连接配置 config_dict={ 'user':'sa', 'password':'', 'host':'127.0.0.1', 'database':'pawn2007' } def SQLServer_connect(config_dict): ''' SQLServer 数据库连接 ''' connect=pymssql.conn

sql语句将本地服务器中的数据插入到外网服务器中

--将本地的数据库中的某张表中的数据导入到180的数据库中 --这个要在本地的数据库运行 exec sp_addlinkedserver 'srv_lnk', '', 'SQLOLEDB','xxx.xxx.xxx'--要导入的服务器的ip exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'账号名','账号密码' --要导入的服务器的账号名和密码 Go --数据导入 Insert into srv_lnk.qu.dbo.AAE_Insurance

SQL 一条SQL语句 统计 各班总人数,男女各总人数 ,各自 男女 比例

select  sClass 班级,count(*)  班级学生总人数,sum(case when sGender=0 then 1 else 0 end) 女生人数,sum(case when sGender=0 then 1 else 0 end)*1.0/count(*)女生所占比例,sum(case when sGender=1 then 1 else 0 end) 男生人数,sum(case when sGender=1 then 1 else 0 end)*1.0 /count(*)