SQL Query to find the last day of the month

前端 未结 14 1799
太阳男子
太阳男子 2020-11-27 04:40

I need to find the last day of a month in the following format:

\"2013-05-31 00:00:00:000\"

Anybody please help out.

14条回答
  •  长情又很酷
    2020-11-27 05:25

    An excelent approach by me. Regards

    DECLARE @MAXDATE INT=(SELECT MAX(DATEPART(YEAR,ORDERDATE)) FROM Orders)
    DECLARE @MINDATE INT=(SELECT MIN(DATEPART(YEAR,ORDERDATE)) FROM Orders)
    DECLARE @HORA INT=(SELECT MIN( DATEPART(HOUR,ORDERDATE)) FROM ORDERS)
    DECLARE @DIA INT = 28
    
    SELECT Employees.EmployeeID , Orders. OrderID , OrderDate  FROM Employees
    INNER JOIN Orders 
    ON Employees.EmployeeID = Orders.EmployeeID
    Where  (DATEPART(YEAR,ORDERDATE)) >=@mindate and  (DATEPART(YEAR,ORDERDATE))<= @maxdate
    and DATEPART(HOUR,ORDERDATE)=@HORA   and DATEPART(DAY,ORDERDATE) IN (30,31) OR DATEADD(DAY,0,DATEPART(DAY,ORDERDATE))=28 AND
    DATEADD(MONTH,0,DATEPART(MONTH,ORDERDATE))=2
    ORDER BY 1 ASC
    

提交回复
热议问题