ORACLE中,我要选取一个30分钟的时间段,取的是sysdate系统当前时间,取到分钟,和当前时间的分钟数往前推30分钟,比如我现在取的时间是当前时间'2010-12-25 14:00',我想取到往前推的30分钟的时间点'20

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/27 05:00:09
ORACLE中,我要选取一个30分钟的时间段,取的是sysdate系统当前时间,取到分钟,和当前时间的分钟数往前推30分钟,比如我现在取的时间是当前时间'2010-12-25 14:00',我想取到往前推的30分钟的时间点'20

ORACLE中,我要选取一个30分钟的时间段,取的是sysdate系统当前时间,取到分钟,和当前时间的分钟数往前推30分钟,比如我现在取的时间是当前时间'2010-12-25 14:00',我想取到往前推的30分钟的时间点'20
ORACLE中,我要选取一个30分钟的时间段,取的是sysdate系统当前时间,取到分钟,和当前时间的分钟数往前推30分钟,比如我现在取的时间是当前时间'2010-12-25 14:00',我想取到往前推的30分钟的时间点'2010-12-25 13:31',并求出此时间段的记录条数,这个SQL怎么写?
拜谢!

ORACLE中,我要选取一个30分钟的时间段,取的是sysdate系统当前时间,取到分钟,和当前时间的分钟数往前推30分钟,比如我现在取的时间是当前时间'2010-12-25 14:00',我想取到往前推的30分钟的时间点'20
sysdate+1是加一天,sysdate+/-(1/48)就是加/减 半个小时
select count(*) from table_name where table_name.date between to_char(sysdate-1/48,'yyyymmdd HH:mi') and sysdate
其中date为你要统计的字段名字
table_name为表的名字
to_char是一个日期函数 to_char(sysdate,'yyyymmdd HH:mi') 为截取到分钟,对应的to_char(sysdate,'yyyymmdd HH')为截取到小时.to_char(sysdate,'yyyymm')为截取到月份,