Sql获取第一天、最后一天(转载)
来源:互联网 发布:电子科技大学知乎 编辑:程序博客网 时间:2024/05/16 06:57
Sql获取第一天、最后一天
① 本月第一天
Sql代码
SELECT DATEADD(DD,-DAY(GETDATE())+1,GETDATE())
②本月最后一天
Sql代码
SELECT DATEADD(DD,-DAY(DATEADD(M,1,GETDATE())),DATEADD(M,1,GETDATE()))
备注:
本月最后一天:select dateadd(dd,-day(getdate()),dateadd(m,1,getdate()))
上面的这一句就有问题了,一般的想法是取最后一天,可以在当前时间上加一个月,
然后减去当前
然后减去当前
时间的天数,比如随便2009-8-27,加一个月就是2009-9-27,然后减去2009-8-27时间的
天数27天 正好是2009-8-31,没问题呀。但是,
天数27天 正好是2009-8-31,没问题呀。但是,
如果当前时间本身就是最后一天的话,就会产生临界问题了,比如传入的实际是2009-5-31,
最终得到的最后一天的时间其实也应该是
最终得到的最后一天的时间其实也应该是
2009-5-31才对,如果按照上面的写法,2009-5-31加一个月是多少,2009-6-31?2009-7-1?
都不是,由于月大月小的问题,6月份只有
都不是,由于月大月小的问题,6月份只有
30天,所以2009-5-31加一个月后是2009-6-30日,还是按上面的写法然后再减去2009-5-31时间
的天数31天,最终得到的最后一天是
的天数31天,最终得到的最后一天是
2009-5-30,傻眼了,咋回事啊?还有2月只有28或29天当然也会存在这样的问题,只要稍微改
动一下,在减天数的时候不应减当前时间
动一下,在减天数的时候不应减当前时间
的天数,而应减去加了月份之后的天数,如下写法:
Sql代码
select dateadd(dd,-day(dateadd(m,1,getdate())),dateadd(m,1,getdate()))
这样的话,即使6月没有31天,2009-6-30减去30天就是2009-5-31,再如2009-1-30加一个月
是2009-2-28,减去28天后是2009-1-31符合
是2009-2-28,减去28天后是2009-1-31符合
正确性。
③本周的星期一
Sql代码
SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0)
④一年的第一天
现在用年(yy)的时间间隔来显示这一年的第一天。
Sql代码
SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()), 0)
⑤季度的第一天
假如你要计算这个季度的第一天,这个例子告诉你该如何做。
Sql代码
SELECT DATEADD(qq, DATEDIFF(qq,0,getdate()), 0)
0 0
- Sql获取第一天、最后一天(转载)
- SQL 获取第一天、最后一天等
- SQL 获取本月最后一天,第一天 和 获取上月第一天,最后一天
- 获取某月第一天,最后一天的sql server脚本
- 获取某月第一天,最后一天的sql server脚本
- 获取每月第一天最后一天 java
- Calendar获取月第一天,最后一天
- DB2获取月份第一天最后一天
- JAVA获取月第一天、最后一天
- SQL:上个月最后一天、下个月第一天
- SQL Server获取当月天数,当月第一天,当月最后一天,本年最后一天,当月第一个星期
- 获取本周第一天/最后一天、本月第一天/最后一天的时间戳
- 获取某月第一天,最后一天的sql server脚本,SQL日期类型总结
- SQL 获取当前月的第一天最后一天获取当月最大最小的时间当月天数,当月第一天,当月最后一天
- 获取前月第一天最后一天及本月第一天最后一天--Java
- JAVA 获取当前月第一天,最后一天;上个月第一天,最后一天;下个月第一天,最有一天。
- 上个月第一天,最后一天
- 获取一个月的第一天及最后一天
- android listview 下拉刷新以及加载更多
- 【黑马程序员】Java基础05:多线程与其安全问题
- LeetCode(136)Single Number
- android-log
- 关于mysql数据库dos窗口下插入和显示数据库表中文的方法
- Sql获取第一天、最后一天(转载)
- android-命令
- Python编程习惯与特点
- 二分查找非递归实现--【编程珠玑】
- 关于springmvc 返回json乱码
- 在C#调用C++的DLL简析(一)——生成非托管dll
- PHP文件的锁定机制
- Android多点触控技术实战,自由地对图片进行缩放和移动
- Android属性动画深入分析:让你成为动画牛人