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

Oracle otrzymuje 1 godzinę wsteczną datę

Coś takiego:

select trunc(your_date, 'hh') - number_of_hours_to_go_back/24 start_dt,
       trunc(your_date, 'hh') end_dt
from   dual;

jeśli potrzebujesz tego w instrukcji SQL, lub:

declare
  v_date date := to_date('10/12/2016 10:15:23', 'dd/mm/yyyy hh24:mi:ss');
  v_start_dt date;
  v_end_dt date;
  v_num_hours_back integer;
begin
  v_start_dt := trunc(v_date, 'hh') - v_num_hours_back/24;
  v_end_dt := trunc(v_date, 'hh');
end;
/

jeśli potrzebujesz tego w PL/SQL (aby zaoszczędzić niepotrzebne przełączanie kontekstu między SQL a PL/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 uzyskać skrypt tabeli w Oracle SQL Developer?

  2. Transakcje autonomiczne w Sybase ASE 15,5

  3. Klient Oracle ORA-12541:TNS:no listener

  4. jak zmienić ogranicznik w sqlplus w Oracle 11g

  5. Oracle 11g CREATE VIEW przy użyciu CONNECT BY i wielu tabel