SQL语句获得等时间间隔的时间段
记录一下之前看到的将时间等时间间隔分段的sql语句。
间隔三十分钟的sql语句:
SELECT TO_CHAR(TRUNC(SYSDATE, 'DD') + (30 / (24 * 60) * ROWNUM),
'YYYY-MM-DD hh24:MI:SS')
FROM 表名
WHERE ROWNUM <= 48 / 30;
即可获得每隔30分钟的时间段
间隔五分钟:
SELECT TO_CHAR(TRUNC(SYSDATE, 'DD') + (5 / (24 * 60) * ROWNUM),
'YYYY-MM-DD hh24:MI:SS')
FROM ALL_OBJECTS
WHERE ROWNUM <= 288 / 5;
间隔一分钟:
SELECT TO_CHAR(TRUNC(SYSDATE, 'DD') + (1 / (24 * 60) * ROWNUM),
'YYYY-MM-DD hh24:MI:SS')
FROM ALL_OBJECTS
WHERE ROWNUM <= 1440 / 1;
1440为想获取的行的数量,以一分钟间隔为例,一天24小时,每小时60分钟,24*60=1440
,所得时间范围即为一天,同理想获得30分钟为间隔的一天的数据,总的行数为24*(60/30)=48,可根据实际情况变化。