各位大侠,我用between 怎么会不行呢?请问between有格式限制吗?
我要解决的是这样的一个问题,由于我的束缚我把数据库里的日期的类型设为vchar现在要求一个日期时间访问。
例如:select * from dometable between 2008-1-25-6 12:12:12 and 2008-12-25-6 12:12:12
结果是没有达到查询出来数据。
请问是什么问题呢?
能否不改变数据库的数据类型来解决这个问题!
...全文
1858打赏收藏
【江湖救急】SQL语句中如何编写查询一个字符范围?
各位大侠,我用between 怎么会不行呢?请问between有格式限制吗? 我要解决的是这样的一个问题,由于我的束缚我把数据库里的日期的类型设为vchar现在要求一个日期时间访问。 例如:select * from dometable between 2008-1-25-6 12:12:12 and 2008-12-25-6 12:12:12 结果是没有达到查询出来数据。 请问是什么问题呢? 能否不改变数据库的数据类型来解决这个问题!
你这个日期时间串太怪异:2008-1-25-6 12:12:12
正常情况下,你需要将字段转换为datetime,效率很低,如果时间串是规范的(月和日使用两位),就不需要转了
select * from dometable where CONVERT(datetime,your_field) between '2008.1.25 12:12:12.000' and '2008.12.25 12:12:12.998'
SQL Server
select * from dometable WHERE 字段名 between '2008-1-25-6 12:12:12' and '2008-12-25-6 12:12:12'
Access
select * from dometable WHERE 字段名 between #2008-1-25-6 12:12:12# and #2008-12-25-6 12:12:12#
SQL Server
select * from dometable between '2008-1-25-6 12:12:12' and '2008-12-25-6 12:12:12'
Access
select * from dometable between #2008-1-25-6 12:12:12# and #2008-12-25-6 12:12:12#