Oracle
 sql >> база данни >  >> RDS >> Oracle

Oracle:Изберете дати между периоди от време с помощта на SQL

Опитайте това.

WITH t (sdt, ldt) AS (SELECT MIN (START_DATE), MAX (END_DATE) FROM MY_DATES)
SELECT *
  FROM (    SELECT sdt + LEVEL - 1 AS dates
              FROM t
        CONNECT BY LEVEL <= ldt - sdt + 1) c
 WHERE EXISTS
          (SELECT 1
             FROM MY_DATES d
            WHERE c.dates BETWEEN START_DATE AND END_DATE);

Демо



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да добавите клауза where към обект на изрична таблица за присъединяване на Hibernate @OneToMany?

  2. История на базата данни за използване от клиента

  3. Oracle - Проблем при създаването на тригер, който актуализира друга таблица

  4. Проблем при опит за стартиране на SSIS пакет с Oracle Connection Attunity

  5. Как да разберете статистиката на файла за проследяване в Oracle. Като процесор, изминало време, заявка... и т.н