当前位置: 代码迷 >> Sql Server >> 将 expression 转换为数据类型 datetime 时出现算术溢出异常
  详细解决方案

将 expression 转换为数据类型 datetime 时出现算术溢出异常

热度:474   发布时间:2016-04-27 18:08:41.0
将 expression 转换为数据类型 datetime 时出现算术溢出错误
将 expression 转换为数据类型 datetime 时出现算术溢出错误
select * from AP_OESHDT_SALES_HIST_DETAILS a where
datediff(mm, ltrim(a.YEAR)+'-'+ltrim(a.PERIOD)+'-'+'01', getdate()) between 1 and 12
year 和period都是decmial(5,0),为什么会抱这个错那错
这条语句主要查当前日期之前12个月的数据

------解决方案--------------------
SQL code
select * from AP_OESHDT_SALES_HIST_DETAILS a wheredatediff(mm, ltrim(a.YEAR)+'-'+ltrim(cast(a.PERIOD as int))+'-'+'01', getdate()) between 1 and 12and isdate(ltrim(a.YEAR)+'-'+ltrim(cast(a.PERIOD as int))+'-'+'01')=1
  相关解决方案