设为首页 加入收藏

TOP

SQL单表查询学习:查询每月最后一天数据的方法讲解
2018-05-23 09:17:51 】 浏览:76
Tags:SQL 单表 查询 学习 每月 最后 数据 方法 讲解

对sales.Orders表查询, 返回每月最后一天的订单

\

在SQL Server 2012中你可以使用EOMONTH函数来处理此任务,像下面这样.

select orderid,orderdate,custid,empid
from sales.Orders 
where orderdate=EOMONTH(orderdate);

在SQL Server 2012之前,解决方案会更加复杂, 在日期和时间函数部分,我提供了下面的表达式格式来计算对应于指定时期的月份和最后一天.

DATEADD(month,DATEDIFF(month,'19911231',date_val),'19911231')

此表达式首先计算固定的某月的最后一天(这里是1999年12月31日)与指定日期的差异月数,可称其为diff. 通过添加diff月数到固定日期, 会得到指定日期月份的最后一天,下面是完整的查询解决方案, 仅返回订单日期等于每月最后一天的订单.

select orderid,orderdate,custid,empid
from sales.Orders 
where orderdate=DATEADD(month,DATEDIFF(month,'19911231',orderdate),'19911231')
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Oracle提示ORA-1652表空间已满的.. 下一篇Mysql如何实现让别人远程访问自己..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目