时间格式化的sql语句

现有表T,表结构为 (value long, created date;) 现需要根据当前时间sysdate来获取前一个整10分钟的数据的平均值,以及该数据时间的一天、一周和一月前数据。 例如现在是 2010-3-15 16:28:30,那么我获取的数据依次为 2010-3-15 16:10:00至2010-3-15 16:20:00之间所有value的平均值 2010-3-14 16:10:00至2010-3-14 16:20:00之间所有value的平均值 2010-3-08 16:10:00至2010-3-08 16:20:00之间所有value的平均值 2010-2-15 16:10:00至2010-2-15 16:20:00之间所有value的平均值

第1个回答  2020-04-01
还是自己回答一下了,愿其他看到的人能有所帮助
SELECT
TO_DATE(
TO_CHAR(sysdate,
'YYYY-MM-DD
HH24:')
||
LPAD(
FLOOR(TO_NUMBER
(TO_CHAR(sysdate,
'MI')
)
/
10)
*
10,2,'0')
||
':00','YYYY-MM-DD
HH24:MI:SS'
)
FROM
T
获取当前时间前一个10分钟整点的时间
相似回答