Oracle 在进行日期比较时,最好直接指定日期比较的格式,不要进行隐式转换
方式二: 使用between and 以及 to_date() 函数查询某个时间段内的记录
1.假设数据库中有一个名为TestTest的表。表格内容如下图所示。
2.Select*fromTesttestwhereMonth(date)='9';,它表示对TestTest表中的9月份记录的查询。
3.单击“Run”执行SQL语句,用户可以从下面看到,9月份的三个记录被查询了。
4.Select*fromTesttestwhereyear(Date)='2017';在美国2017年是被质疑的一年。如下图所示,2017年仅查询了一条记录,如下图。
sql server:
select * from 表 where 发生日期>'2008-7-1' and 发生日期<'2008-12-31'
access:
select * from 表 where 发生日期>#2008-7-1# and 发生日期<#2008-12-31#
这样就可以了,注意sql server与access中的日期有一点不一样。
扩展资料:sql查询日期语句
select * from ShopOrder where datediff(week,ordTime,getdate()-1)=0 //查询当天日期在一周年的数据
select * from ShopOrder where datediff(day,ordTime,getdate()-1)=0 //查询当天的所有数据
SELECT * FROM A where datediff(d,datetime,getdate()) <=30 //前30天
SELECT * FROM A WHERE DATEDIFF(m, shijian, GETDATE()) <=1 // 上一月
查询当天记录另类的方法:
SELECT *
FROM j_GradeShop
WHERE (GAddTime BETWEEN CONVERT(datetime, LEFT(GETDATE(), 10) + ' 00:00:00.000')
AND CONVERT(datetime, LEFT(GETDATE(), 10) + ' 00:00:00.000') + 1)
ORDER BY GAddTime DESC
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)