select * from 通行记录表 where convert(datetime,登记时间)
between convert(datetime,'2011-4-6') and convert(datetime,'2011-5-6'))
我在执行上面的SQL语句时出现下面的问题(语法方面是没有问题的):
"从 char 数据类型到 datetime 数据类型的转换导致 datetime 值越界"
登记时间是一个varchar的字段来的,都是类似2011-04-02 23:25:02格式的.
解决方法:
select * from 通行记录表 where ISDATE(登记时间)=0 找出数据库中不是日期格式的登记时间,然后修改它就可以了.
本文介绍了一种在SQL查询中遇到的日期转换错误,并提供了解决方案:通过筛选并修正不符合日期格式的数据来修复该问题。
2万+

被折叠的 条评论
为什么被折叠?



