随着逐渐深入人们生活的数据库,SQL Server也迅速实现了极大的发展。在SQL Server中,有一个函数可以快速肯定每个月的最后一天。它是DATEADD(mm,DATEDIFF(mm,0,GETDATE()),⑴)。下面我们来深入了解一下:
该函数使用了三个函数,DATEADD,DATEDIFF和GETDATE,来帮助我们肯定每个月最后一天。DATEADD函数在语法表达中有符号“+、-”,可以通过它来添加或减少指定的日期,它接受时间间隔作为参数。DATEDIFF函数可以找出两个日期之间有多少时间单位,它的参数可以是小时、分钟、月,也能够是年,这取决于您使用的日期类型。GETDATE()函数可以返回一个日期值,函数调用不接受任何参数,它只返回当前的日期(和当前的时间)。
现在我们来看看DATEADD(mm,DATEDIFF(mm,0,GETDATE()),⑴)中的参数。DATEADD函数的参数为mm,这意味着可以添加或减少按月;DATEDIFF函数的第一个参数为mm,它表示两个日期之间的月份差;第二个参数为0,这意味着在DATEADD函数中,按月添加或减少的对象是零月。最后,GETDATE()函数返回当前日期,而最后一个参数是“⑴”,这意味着我们向当前日期减去一月,因此可以肯定上一月的最后一天。
例如:SELECT DATEADD(mm,DATEDIFF(mm,0,GETDATE()),⑴);
Above statement returns the last date of the previous month.
以上语句将返回上个月的最后一天。如此一来,我们可以很容易地肯定SQL Server中每个月的最后一天,不再繁琐的操作。
本文来源:https://www.yuntue.com/post/90676.html | 云服务器网,转载请注明出处!

微信扫一扫打赏
支付宝扫一扫打赏