sql >> Database teknologi >  >> RDS >> Oracle

Oracle:Vælg datoer mellem datointervaller ved hjælp af SQL

Prøv dette.

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);

Demo



  1. Google Maps API v3 javascript-markører indlæses ikke altid

  2. Gotchas, når du bruger Microsoft Access Runtime

  3. Eksport af forespørgselsresultater i MySQL Workbench ud over 1000 poster

  4. Sådan finder du de tre øverste kolonnetotaler ved hjælp af SQL