美文网首页
Oracle 使用临时表构建连续时间列表

Oracle 使用临时表构建连续时间列表

作者: 单v纯微笑 | 来源:发表于2021-03-30 14:26 被阅读0次

    1.连续时间-日

    -- 时间格式为:YYYY-MM-DD
    SELECT
        TO_DATE('开始时间', 'YYYY-MM-DD') + (LEVEL - 1) AS DATE_TIME
    FROM
        DUAL
    CONNECT BY
        LEVEL <= (TO_DATE('结束时间', 'YYYY-MM-DD') - TO_DATE('开始时间', 'YYYY-MM-DD')) + 1
    

    2.连续时间-小时

    -- 时间格式为:YYYY-MM-DD HH24:MI
    SELECT
        TO_DATE('开始时间', 'YYYY-MM-DD HH24:MI') + NUMTODSINTERVAL(ROWNUM - 1,
        'HOUR') MONITOR_TIME
    FROM
        DUAL
    CONNECT BY
        ROWNUM <= ROUND(TO_NUMBER(TO_DATE('结束时间', 'YYYY-MM-DD HH24:MI') - TO_DATE('开始时间', 'YYYY-MM-DD HH24:MI')) * 24) + 1
    

    相关文章

      网友评论

          本文标题:Oracle 使用临时表构建连续时间列表

          本文链接:https://www.haomeiwen.com/subject/ytqghltx.html