使用 DayOfYear 继续增加 Date 字段?

Continue increment on Date field using DayOfYear?

我希望从日期字段继续递增,并从该特定日期字段开始一年中的某一天。

例如 (SQL SEVER):

(DATEPART(DAYOFYEAR, CUSTOM_Date) -58) -- Decremented 58 Days to start

我期待 'Jan 01' 继续编号,但它变成负数?

您得到的正是它应该做的。 1 月 1 日是一年的第一天。这意味着该日期的年月日将为 1。如果从该数字中减去 59(或在您的情况下为 58),您将得到 -57。 如果您希望它继续递增,则需要有一个开始日期并改用 DATEDIFF。 使用具有真实开始日期的变量(我称之为@startdate)并执行以下操作:
(DATEDIFF(DAY, @startdate, CUSTOM_date) -59)
注意:我认为在你的屏幕截图中你实际上做了 -58,而不是 -59。