1

我有一个查询,可以获取程序中某个字段的日期。此日期必须修改 10 年。

我提出的查询是

SELECT DATEADD(yy, +10, '"+thisfield.value+"')

where'"+thisfield.value+"'来自程序并填写 like 01-08-2012

查询的结果是2022-07-31 00:00:00.000。我遇到的问题是我只需要2022-08-01格式,01-08-2022这样我就可以用这个结果自动填充另一个字段。

在 SQL Server 2005 中,日期函数不仅仅适用于 datetime 函数,我只是不需要它。

我希望这很清楚(我第一次发布东西)。谁能帮我?

4

1 回答 1

0

您可以截断结果,或将其转换为 DATE

CAST(DATEADD(yy, +10, '"+thisfield.value+"') AS DATE)" 

CONVERT(VARCHAR, DATEADD(yy, +10, '"+thisfield.value+"'), 101)" 

CONVERT 使用样式 101 的格式为 mm/dd/yyyy,恰好是您想要的格式。请记住,您可以根据需要在应用程序中格式化结果以用于显示目的,这比从 SQL Server 返回字符串要好。

另请注意,您应该查看参数化查询和/或存储过程。

于 2012-08-01T09:08:38.353 回答