如何从sql server中的当前日期获取该月的最后一个日期 [英] how to get last date of the month from the current date in sql server

查看:61
本文介绍了如何从sql server中的当前日期获取该月的最后一个日期的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何从sql server中的当前日期获取当月的最后日期

how to get last date of the month from the current date in sql server

推荐答案

CREATE FUNCTION [dbo].[udf_GetLastDayOfMonth]
(
    @Date DATETIME
)
RETURNS DATETIME
AS
BEGIN

    RETURN DATEADD(d, -1, DATEADD(m, DATEDIFF(m, 0, @Date) + 1, 0))

END





查询:





Query:

DECLARE @date DATETIME
SELECT @date = '2013-05-31 15:04:10.027'

SELECT DATEADD(d, -1, DATEADD(m, DATEDIFF(m, 0, @date) + 1, 0))





输出:



-------------- ---------

2013-05-31 00:00:00.000





或者如果你有sql server 2012 ..





Output:

-----------------------
2013-05-31 00:00:00.000


or if you have sql server 2012..

SELECT CAST(eomonth(GETDATE()) AS datetime)







请接受它是否为你工作..




Please accept if its work for you..


SELECT CONVERT(VARCHAR(25),DATEADD(dd,-(DAY(DATEADD(mm,1,GETDATE()))),DATEADD(mm,1,GETDATE())),111)



更改 111 如果你想要一个不同的日期格式

这会产生


Change the 111 if you want a different date format
This produces

Quote:

2014/05 / 31

2014/05/31


推荐这个



Refer this

DECLARE @Month INTEGER
DECLARE @Year INTEGER
SET @Month = MONTH(GETDATE())
SET @Year = YEAR(GETDATE())

DECLARE @FirstDayOfMonth DATETIME
DECLARE @LastDayOfMonth DATETIME

SET @FirstDayOfMonth = Str(@Year) + RIGHT('0' + Str(@Month), 2) + '01'
SET @LastDayOfMonth = DATEADD(dd, -1, DATEADD(mm, 1, @FirstDayOfMOnth))
SELECT @FirstDayOfMonth, @LastDayOfMonth


这篇关于如何从sql server中的当前日期获取该月的最后一个日期的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆