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

Vypočítejte rozdíl mezi 2 daty/časy v Oracle SQL

Data můžete odečíst v Oracle. Tím získáte rozdíl ve dnech. Vynásobením 24 získáte hodiny a tak dále.

SQL> select oldest - creation from my_table;

Pokud je vaše datum uloženo jako znaková data, musíte je nejprve převést na typ data.

SQL> select 24 * (to_date('2009-07-07 22:00', 'YYYY-MM-DD hh24:mi') 
             - to_date('2009-07-07 19:30', 'YYYY-MM-DD hh24:mi')) diff_hours 
       from dual;

DIFF_HOURS
----------
       2.5

Poznámka :

Tato odpověď platí pro data reprezentovaná datovým typem Oracle DATE .Oracle má také datový typ TIMESTAMP , který může také představovat datum (s časem). Pokud odečtete TIMESTAMP hodnoty, získáte INTERVAL; pro extrakci číselných hodnot použijte EXTRACT funkce.



  1. Vytvoření výchozího veřejného profilu pro databázovou poštu na serveru SQL Server (T-SQL)

  2. Použití parametrů s připojením Oracle ODBC

  3. Proč je důležité omezit přístup uživatelů k vaší databázi

  4. existuje v ms-access funkce group_concat?