Oracle
 sql >> Baza danych >  >> RDS >> Oracle

problem z Add_month w Oracle , muszę wygenerować cykl rozliczeniowy

Trochę obliczeń może pomóc.

SQL> with test (col) as
  2    (select date '2020-03-27' from dual union all
  3     select date '2020-01-10' from dual union all
  4     select date '2018-02-27' from dual union all
  5     select date '2018-02-28' from dual
  6    )
  7  select col,
  8    least(add_months(col, 1),
  9          add_months(trunc(col, 'mm'), 1) + (col - trunc(col, 'mm'))
 10         ) result
 11  from test
 12  order by col;

COL        RESULT
---------- ----------
27.02.2018 27.03.2018
28.02.2018 28.03.2018
10.01.2020 10.02.2020
27.03.2020 27.04.2020

SQL>


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. jak stworzyć dynamiczną tabelę w Oracle z dynamiczną nazwą kolumny i dynamicznym typem danych bez żadnych widoków lub innego typu tabeli

  2. Pobierz wszystkie rekordy z kursora referencyjnego w pakiecie

  3. Oracle PL/SQL:Pomóż w rozwiązaniu PLS-00103:Napotkano symbol LOOP, oczekując jednej z następujących sytuacji:jeśli

  4. Dlaczego zmienna oracle plsql varchar2 wymaga rozmiaru, a parametr nie?

  5. Przekazywanie listy dat do funkcji Oracle db przez java