sql:按年、月、日钻取时间
#按月排
SELECT count(EN_NAME), DATE_FORMAT( CREATE_DATE, "%Y-%m" )
FROM finance
WHERE DATE_FORMAT( CREATE_DATE, "%Y" ) = "2016"
GROUP BY DATE_FORMAT( CREATE_DATE, "%Y-%m" )
#按日排
SELECT count(EN_NAME), DATE_FORMAT( CREATE_DATE, "%Y-%m-%d" )
FROM finance
WHERE DATE_FORMAT( CREATE_DATE, "%Y" ) = "2016"
GROUP BY DATE_FORMAT( CREATE_DATE, "%Y-%m-%d" )
这样做的话其实有一点不好,那就是select的维度和group by的里面都会是2018-xx的形式,我想取个月份02都不行,那么现在mysql的时间函数就派上用处了
示例:
select year(m),SUM(vol) as metric_0 from cigarette where DATE_FORMAT(m ,'%Y-%m') = '2018-02' group by year(m) order by metric_0 DESC
同理可得year、month、day函数,更可得hour().啊什么的
但是。。事情往往是不如人意的
比如说,我钻取维度可以只选择年到日,也就是一年点进去可以显示到日。。。
我特么
select DATE_FORMAT(m,"%m-%d") ,SUM(vol) from sales where DATE_FORMAT(m , '%Y') like '' group by DATE_FORMAT(m,"%m-%d") order by DATE_FORMAT(m,"%m-%d") ASC
同样的道理,如果从月到日,一开始进来就得是2018-07
sql:按年、月、日钻取时间的更多相关文章
- SQL显示某月全部日期明细以及SQL日期格式
SQL显示某月全部日期明细<存储过程> 方法一: declare @date datetime declare @end datetime ,getdate()) ,@date) crea ...
- SQL 计算某月有多少天
今天用SQL Server 2005写查询语句,要求计算一个月平均每天发生的金额.以前往往喜欢查询相关的所有列,在代码中进行计算,还没有在SQL中写过. 第一印象就是:要考虑到润年还是平年,再判断是大 ...
- sql server 按月对数据表进行分区
当某张数据表数据量较大时,我们就需要对该表进行分区处理,以下sql语句,会将数据表按月份,分为12个分区表存储数据,废话不多说,直接上脚本: use [SIT_L_TMS] --开启 XP_CMDSH ...
- SQL查询一个月第一天/最后一天及日期格式化
1.一个月第一天的Select DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) 2.本周的星期一Select DATEADD(wk, DATEDIFF(wk,0,ge ...
- sql 分组后重复数据取时间最新的一条记录
1.取时间最新的记录 不分组有重复(多条CreateTime一样的都是最新记录) select * from test t where pid in ( select PId from Test t ...
- sql从n月到m月数据汇总,没有数据,当月显示0
做个备份 -- 按月份统计select date1, MONTHS, createtime, nvl(count2, 0)+count1 from ( SELECT TO_CHAR(ADD_MONTH ...
- sql 查询每月的销售金额
sql 数据分月统计,表中只有每天的数据,现在要求求一年中每个月的统计数据(一条sql) SELECT MONTH ( 那个日期的字段 ), SUM( 需要统计的字段, 比如销售额什么的 ...
- SQL语句统计每天、每月、每年的 数据
SQL语句统计每天.每月.每年的数据 1.每年select year(ordertime) 年,sum(Total) 销售合计from 订单表group by year(ordertime) 2.每月 ...
- SQL语句统计每天、每月、每年的数据
1.每年select year(ordertime) 年,sum(Total) 销售合计from 订单表group by year(ordertime) 2.每月select year(orderti ...
随机推荐
- linux查看与修改交换内存配置(解决zabbix-agent启动报错)
问题 zabbix-agent在一台centos6.5上启动报错: cannot allocate shared memory of size 949056: [28] No space left o ...
- day 06
深浅拷贝 # 值拷贝:应用场景最多ls = [1, 'abc', [10]]ls1 = ls # ls1直接将ls中存放的地址拿过来# ls内部的值发生任何变化,ls1都会随之变化ls2 = l ...
- 洲阁筛 & min_25筛学习笔记
洲阁筛 给定一个积性函数$F(n)$,求$\sum_{i = 1}^{n}F(n)$.并且$F(n)$满足在素数和素数次幂的时候易于计算. 显然有: $\sum_{i = 1}^{n} F(n) = ...
- linux服务基础之http协议
URI:Uniform Resource Identifier URL: Uniform Resource Locator,用于描述某服务器某特定资源的位置 URN: Uniform Resource ...
- 论文笔记:Progressive Neural Architecture Search
Progressive Neural Architecture Search 2019-03-18 20:28:13 Paper:http://openaccess.thecvf.com/conten ...
- java基础--集合框架的认识
一.集合框架 对于不知道存储数量和更复杂的方式存储对象用集合框架. 其中有几个常用的接口和实现类:Collection父接口.List接口,Set接口,Map接口, ArrayList实现类.Link ...
- sql server把一个库表的某个字段更新到另一张表的相同字段
缘由:进行update时忘了加where条件,导致所有数据全部update.. sql: 1 update Activity set endTime=b.endTime from idj_tl_bf. ...
- springboot自定义starter
1,创建一个空工程 2,new一个Modules ---------------- maven (启动器) : springboottest-spring-boot-starter 3,new一个M ...
- C#的Monitor.Enter和Monitor.Exit
C#的lock 语句实际上是调用Monitor.Enter和Monitor.Exit,中间夹杂try-finally语句的简略版,下面是实际发生在之前例 子中的Go方法: 1 2 3 4 5 6 7 ...
- 导出MySql中的数据库 --Linux/Windows
1.thanlon@thanlon-Ubuntu:~$ mysqldump -uroot -p mysql>db.sql “mysql”为数据库名,db.sql为导出的文件