【问题标题】:How to fetch values from starting of the year in MS SQL如何在 MS SQL 中从年初获取值
【发布时间】:2021-04-29 07:36:24
【问题描述】:

我可以使用以下代码获得准确的 3 年价值(从 01/24/2018 - 01/25/2021)

select * from datamining.dbo.EmployeeDetails
where DateOfjoining >= DATEADD(year,-3,GETDATE())

但我预计结果应该是从 01/01/2018 到 01/25/2021(截止日期)

我如何做到这一点?

【问题讨论】:

  • 获取当前年份,减去3,然后使用datefromparts。
  • 也许是时候通过阅读文档来了解 tsql 中可用的date functions 了。您还可以使用 datepart 来获取一年中的哪一天,从当前日期中减去 [那个值 - 1],然后从中减去 3 年。
  • @SM 或者谢谢。这对我帮助很大

标签: sql-server ssms-2016


【解决方案1】:

方法很多。一种是结合 YEAR(从日期中提取数字年份值)和 DATEFROMPARTS(从年、月和日组件中构造日期)。例如:

select * from datamining.dbo.EmployeeDetails
where DateOfjoining >= DATEFROMPARTS(YEAR(DATEADD(year,-3,GETDATE())),1,1)

【讨论】:

  • 这确实有效。我很想了解更多。谢谢你
猜你喜欢
  • 2013-10-14
  • 2017-04-30
  • 2011-08-23
  • 1970-01-01
  • 2019-06-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-09
相关资源
最近更新 更多