【问题标题】:add a year and subtract a day, using datepart in my query在我的查询中使用 datepart 加一年减一天
【发布时间】:2010-12-07 23:02:27
【问题描述】:
Where (DYYYY = (year( getdate() +1)))DatePart(month, GETDATE())) + '/' + DatePart(day, GetDate())) -1 + '/' + DatePart(year, GetDate())) +1)

我无法运行查询,我可以使用昨天的日期,但明年的预测。

【问题讨论】:

  • 我怀疑您可能想要重新格式化您的查询以获得有用的答案。你拥有的东西是无效的;你能把它分成多条逻辑线吗?
  • 是的,我想将月份、日期和年份分开

标签: sql sql-server-2005 date


【解决方案1】:

这会给你想要的东西吗?

DATEADD(yy, 1, DATEADD(dd, -1, getdate()))

如果你想排除时间分量,那么你可以使用这样的变体

DATEADD(yy, 1, DATEADD(dd, datediff(dd, 0, getdate()), -1))

【讨论】:

  • 出于某种原因,这些对我不起作用。我希望它采用原始的 getdate 格式,只需添加一年并减去一天。但是,当我在查询中尝试这些时,我没有得到任何回报。
  • 您的问题中 DYYYY 的数据类型和样本值是什么?我的解决方案返回 DATETIME 数据类型。
猜你喜欢
  • 1970-01-01
  • 2021-09-17
  • 2017-08-04
  • 1970-01-01
  • 1970-01-01
  • 2016-03-15
  • 2023-03-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多