Sql Server 2008:从字符串转换日期和/或时间时转换失败
我需要得到03-01作为结果@startmonth,但我一直得到 从字符转换日期和/或时间时转换失败 绳子Sql Server 2008:从字符串转换日期和/或时间时转换失败,sql,sql-server,sql-server-2008,Sql,Sql Server,Sql Server 2008,我需要得到03-01作为结果@startmonth,但我一直得到 从字符转换日期和/或时间时转换失败 绳子 如果要将结果存储为03-01,则变量不能为日期类型。将@startmonth数据类型更改为varchar 此外,您的查询中几乎没有不需要的代码。试试这个 DECLARE @startmonth VARCHAR(6),@newdate DATE SELECT @newdate = Dateadd(DAY, 1,'2012-02-29') SELECT @startmonth = L
如果要将结果存储为03-01,则变量不能为日期类型。将@startmonth数据类型更改为varchar 此外,您的查询中几乎没有不需要的代码。试试这个
DECLARE @startmonth VARCHAR(6),@newdate DATE
SELECT @newdate = Dateadd(DAY, 1,'2012-02-29')
SELECT @startmonth = LEFT(CONVERT(VARCHAR(15), @newdate, 110), 5)
Print @startmonth
DECLARE @startmonth VARCHAR(6),@newdate DATE
SELECT @newdate = Dateadd(DAY, 1,'2012-02-29')
SELECT @startmonth = LEFT(CONVERT(VARCHAR(15), @newdate, 110), 5)
Print @startmonth