从 char 数据类型到 datetime 数据类型的转换导致 datetime 值越界。
declare @startRange int
select @startRange = count(1)
from UPM_BIZ.Process.SSC_Sta_WorkTime
where '2011-10-21 8:20:00' > convert(datetime, convert(varchar(10),'2011-10-21 14:20:00', 105) + ' ' + [time])
print @startRange
from UPM_BIZ.Process.SSC_Sta_WorkTime
where '2011-10-21 8:20:00' > convert(datetime, convert(varchar(10),'2011-10-21 14:20:00', 105) + ' ' + [time])
print @startRange
这段代码在查询分析器里没问题,但是放到函数里就会报我标题写的那个错误,将 convert 函数里的 105 改成 120 就可以了。
走向地狱的途中,不小心走了程序员这条路,路上一个个黑心的老板,和暗无天日的加班,我才发现,通往地狱的路径中,我们这行是最短的。