首页 > 解决方案 > 使用 SQL 中的时间戳获取一年中的第一个和最后 6 个月

问题描述

我需要在一年中创建第一个和最后 6 个月,而不是从当前日期考虑:

select DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE())-6, 0) 

我用过这个,但这给出了 6 个月前的第一个日期

标签: sqlsql-server

解决方案


DATEFROMPARTS函数可用于:

SELECT
    DATEFROMPARTS(YEAR(GETDATE()),1,1) AS beginningOfYear, 
    DATEFROMPARTS(YEAR(GETDATE()),6,1) AS midOfYear

推荐阅读