我有一个查询,它获取程序中字段的日期。这个日期必须修改10年。
我提出的查询是
SELECT DATEADD(yy, +10, '"+thisfield.value+"')
其中'"+thisfield.value+"'
来自该计划,并填写为01-08-2012
。
查询结果为2022-07-31 00:00:00.000
。我遇到的问题是我只需要2022-08-01
,但格式为01-08-2022
,以便我可以使用此结果自动填充其他字段。
在SQL Server 2005中,日期函数不仅仅用于日期时间函数,我只是不需要它。
我希望这很清楚(我第一次发帖)。任何人都可以帮助我吗?
答案 0 :(得分:0)
您可以截断结果,也可以将其转换为DATE
CAST(DATEADD(yy, +10, '"+thisfield.value+"') AS DATE)"
CONVERT(VARCHAR, DATEADD(yy, +10, '"+thisfield.value+"'), 101)"
使用样式101的CONVERT格式为mm / dd / yyyy,这恰好是您想要的格式。请记住,您可以根据需要在应用程序中格式化结果以进行显示,这比从SQL Server返回字符串更好。
另请注意,您应该查看参数化查询和/或存储过程。