从字符串转换日期和/或时间时转换失败 - 消息241,级别16,状态1,

时间:2016-09-29 21:34:27

标签: sql-server

当我尝试将其设置为cast()convert()时,我的代码始终出现以下错误。似乎没什么用。

查询:

SELECT TOP 100
    *
FROM [OptionsDW].[dbo].[Octagon5]
WHERE CONVERT(datetime2, CurrDate, 121) 
          BETWEEN CAST('2010-01-01' AS date) AND CAST('2010-06-31' AS date)

结果:

  

消息241,级别16,状态1,行2转换时转换失败   字符串的日期和/或时间。

我知道有很多类似的查询,但没有一个能帮我解决问题。

1 个答案:

答案 0 :(得分:1)

6月只有30天,因此你的where语句中的CAST('2010-06-31' AS date)将失败