循环时间-数据库


sqlser 循环时间
SELECT CONVERT(varchar(16),DATEADD(hh, number, '2016-11-01'),120) MONITORTIME
FROM master.dbo.spt_values
WHERE type = 'P'
AND number <= DATEDIFF(HOUR, '2016-11-01 00:00', '2016-11-02 23:00')
sqlser 循环日
SELECT CONVERT(varchar(100),DATEADD(dd, number, '2016-11-01'),23) MONITORTIME
FROM master.dbo.spt_values
WHERE type = 'P'
AND number <= DATEDIFF(DAY, '2016-11-01', '2016-11-02')


oracle 循环小时
select to_date('2014-01-01 00:00','YYYY-MM-DD HH24:MI')+(level-1)/24 as dat
from dual
connect by level <=(to_date('2014-01-02 23:00','YYYY-MM-DD HH24:MI')-to_date('2014-01-01 00:00','YYYY-MM-DD HH24:MI'))*24+1

oracle 循环日
select to_date('2014-01-01','YYYY-MM-DD')+(level-1) as dat
from dual
connect by level <=to_date('2014-01-02','YYYY-MM-DD')-to_date('2014-01-01','YYYY-MM-DD')+1


db2 循环日
WITH T_COD_DATEDAY(YMD)AS
(
VALUES(TO_DATE('2005-09-03','YYYY-MM-DD'))
UNION ALL
SELECT YMD + 1 DAY FROM T_COD_DATEDAY WHERE YMD +1 DAY <= TO_DATE('2005-09-04','YYYY-MM-DD')
)
SELECT TO_CHAR(TD.YMD,'YYYY-MM-DD') FROM T_COD_DATEDAY TD

db2 循环小时
WITH T_COD_DATEDAY(YMD)AS
(
VALUES(TO_DATE('2005-09-03 00:00:00','YYYY-MM-DD HH24:MI:SS'))
UNION ALL
SELECT YMD + 1 HOUR FROM T_COD_DATEDAY WHERE YMD +1 HOUR <= TO_DATE('2005-09-04 00:00:00','YYYY-MM-DD HH24:MI:SS')
)
SELECT TO_CHAR(TD.YMD,'YYYY-MM-DD HH24:MI:SS') FROM T_COD_DATEDAY TD

MySQL