今天用time Like '2008-06-01%'语句来查询该天的所有数据,被提示语句错误。查了一下才发现该模糊查询只能用于String类型的字段。
自己也查阅了一些资料。关于时间的模糊查询有以下三种方法:
1.Convert转成String,在用Like查询。
select * from table1 where convert(varchar,date,120) like '2006-04-01%'
2.Between
select * from table1 where time between '2006-4-1 0:00:00' and '2006-4-1 24:59:59'";
3 datediff()函数
select * from table1 where datediff(day,time,'2006-4-1')=0
第一种方法应该适用与任何数据类型;
第二种方法适用String外的类型;
第三种方法则是为date类型定制的比较实用快捷的方法。
相关文章
- sql server 2008有关SQL的模糊查询
- 在access数据库中,如何使用sql语句进行时间字段的计算,例如:select * from table where date_
- SQL 获得两个时间段之间的数据
- SQL Server仅获取日期和时间的日期表单列[重复]
- 如何将SQL Server时间值绑定到ASP.Net Web表单中的下拉列表?
- 如何在SQL Server 2008中指定12小时的时间格式
- Oracle SQL 两个日期类型毫秒值求差,日期转毫秒,时间差(ms)自定义函数解决毫秒差
- 求助关于sql一段时间内重复记录的问题
- MySQL 对一段时间内每天数据统计案例--sql优化
- 请教sql server 2000服务器运行一段时间变慢的问题