我如何convert
SQL Server 2008中的日期格式?
SELECT
Dateadd(DAY, (SELECT MaxCheckday
FROM tbl_LibryMemberCategory
WHERE IsDeleted = 'N'), Getdate())
运行上述查询时出现此错误
Msg 242,Level 16,State 3,Line 1
将varchar数据类型转换为日期时间数据类型会导致超出范围的值。
答案 0 :(得分:0)
MaxCheckDay应该只有7,而不是“7天”。
SELECT Dateadd(dd,(SELECT MaxCheckday
FROM tbl_LibryMemberCategory
WHERE IsDeleted = 'N'), Getdate())
答案 1 :(得分:0)
如果没有错,这就是你想要实现的目标
SELECT CONVERT(VARCHAR(20), Dateadd(Day, MaxCheckday, Getdate()), 103)
FROM tbl_LibryMemberCategory
WHERE IsDeleted = 'N'
您的查询中的问题是在转换后执行Dateadd
。尝试运行以下内容,您将收到相同的错误
SELECT Dateadd(day,1, convert(varchar,Getdate(),103))