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

Jak mogę uzyskać bieżący rok przy użyciu SQL na Oracle?

Używając to_char:

select to_char(sysdate, 'YYYY') from dual;

W swoim przykładzie możesz użyć czegoś takiego:

BETWEEN trunc(sysdate, 'YEAR') 
    AND add_months(trunc(sysdate, 'YEAR'), 12)-1/24/60/60;

Wartości porównania są dokładnie tym, o co prosisz:

select trunc(sysdate, 'YEAR') begin_year
     , add_months(trunc(sysdate, 'YEAR'), 12)-1/24/60/60 last_second_year
from dual;

BEGIN_YEAR  LAST_SECOND_YEAR
----------- ----------------
01/01/2009  31/12/2009


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Rekurencyjne zapytanie SQL w tabeli samoodwołującej się (Oracle)

  2. Podkreślenie nie działa w wyroczni jak klauzula

  3. różnica między NLS_NCHAR_CHARACTERSET i NLS_CHARACTERSET dla Oracle

  4. Magazynowanie danych Profilowanie danych ETL za pomocą Oracle Warehouse Builder

  5. Znajdź długość najdłuższego wiersza w kolumnie w Oracle