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

Oracle Sådan lister du sidste dage i måneder mellem 2 datoer

Det ville være DISTINCT + LAST_DAY , formoder jeg.

Indstilling af datoformat (så det matcher dit; alternativt, anvend TO_CHAR til jour værdi med passende formatmaske):

SQL> alter session set nls_Date_format = 'yyyymmdd';

Session altered.

Jeg forkortede tidsrum til 2 år (for at spare plads :)).

SQL> select distinct last_day(to_date('01/01/2000','dd/mm/yyyy') + (LEVEL-1)) as jour
  2  from dual
  3  connect by level <= to_date('31/12/2002','dd/mm/yyyy')-to_date('01/01/2000','dd/mm/yyyy')
  4  order by 1;

JOUR
--------
20000131
20000229
20000331
20000430
20000531
20000630
20000731
20000831
<snip>
20020630
20020731
20020831
20020930
20021031
20021130
20021231

36 rows selected.

SQL>


  1. FEJL:Indlæsning af lokale data er deaktiveret - dette skal være aktiveret på både klient- og serversiden

  2. Kan ikke forbinde min Android Studio-app med PostgreSQL

  3. PostgreSQL:Hvordan finder man ud af manglende tal i en kolonne ved hjælp af gener_series()?

  4. SQL Server:SUM() af flere rækker inklusive where-sætninger