代码当前日期T-SQL获取当月天数正确解法
最近研究代码当前日期,稍微总结一下,以后继续补充:
在网上看了很多人说如何获得当月天数,有的根据以后日期向后加一个月,然后用加一个月后的值减去以后的日期,结果获得的天数不一定对,比如今天是5月31日,那么加上一个月就是6月30日(6月份没有31日),这个时候用6月30日减去5月31日,就会得到30天),代码如下:
select day(dateadd(mm,1,getdate())-day(getdate())),如果以后日期不是31日(闰月),那么获得的结果是正确的,如果是31日,结果将是30天,明显不对。
以下代码可以正确实现我们想要的结果:
select Day(DATEADD(month, DATEDIFF(month, '20141231', getdate()), '20141231'))
文章结束给大家分享下程序员的一些笑话语录:
Bphone之你们聊,我先走了!移动说:我在phone前加o,我叫o缝;苹果说:我在phone前i,我是i缝;微软说:我在phone前加w,我叫w缝;三星说:你们聊,我先走了!
将来王建宙写回忆录的时候,一定要有一句“常小兵为中国移动的发展做出了不可磨灭的贡献”。
---------------------------------
原创文章 By
代码和当前日期
---------------------------------