日期:2014-05-17  浏览次数:20552 次

sql语句的时间格式问题
若表中的字段保存的时间是'1000-1-1 0:00:00' 查询的时候就会报错,怎么办?

SQL:select * from ed_jobinfo where convert(datetime,retiretime)<='2012-8-1'


错:从 char 数据类型到 datetime 数据类型的转换导致 datetime 值越界。

应该怎么处理?求解


------解决方案--------------------
select * from ed_jobinfo where retiretime <= '2012-8-1'

不要做多余的事情
------解决方案--------------------
表中字段类型是datetime类型吗?
不是,就用字符串比较,是也可以直接比较。
select * from ed_jobinfo where retiretime <= '2012-8-1'