sql >> Databáze >  >> RDS >> Oracle

problém s Add_month v oracle, potřebuji vygenerovat fakturační cyklus

Trochu výpočtu by mohlo pomoci.

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. Proměnná tabulky je vyplněna pouze jednou hodnotou

  2. MySQL vytváří syntaxi uložené procedury s oddělovačem

  3. mongoDB vs mySQL – proč je jeden v některých aspektech lepší než druhý

  4. SQL DELETE s INNER JOIN