sql >> Database >  >> RDS >> Oracle

Oracle Converteer TIMESTAMP met tijdzone naar DATE

to_timestamp_tz() functie met at time zone clausule kan worden gebruikt om uw letterlijke tekenreeks om te zetten in een waarde van timestamp with time zone gegevenstype:

SQL> with t1(tm) as(
  2    select '2013-11-08T10:11:31+02:00' from dual
  3  )
  4  select to_timestamp_tz(tm, 'yyyy-mm-dd"T"hh24:mi:ss TZH:TZM')
  5           at time zone '+4:00'         as this_way
  6       , to_timestamp_tz(tm, 'yyyy-mm-dd"T"hh24:mi:ss TZH:TZM')
  7           at time zone 'Europe/Moscow' as or_this_way
  8    from t1
  9  /

Resultaat:

THIS_WAY                            OR_THIS_WAY
----------------------------------------------------------------------------
2013-11-08 12.11.31 PM +04:00       2013-11-08 12.11.31 PM EUROPE/MOSCOW

En dan gebruiken we cast() functie om een ​​waarde van date te produceren gegevenstype:

with t1(tm) as(
  select '2013-11-08T10:11:31+02:00' from dual
)
select cast(to_timestamp_tz(tm, 'yyyy-mm-dd"T"hh24:mi:ss TZH:TZM') 
         at time zone '+4:00' as date)   as this_way  
     , cast(to_timestamp_tz(tm, 'yyyy-mm-dd"T"hh24:mi:ss TZH:TZM') 
         at time zone 'Europe/Moscow' as date) as or_this_way
  from t1

This_Way             Or_This_Way 
------------------------------------------
2013-11-08 12:11:31  2013-11-08 12:11:31 

Lees meer over de at time zone-clausule en to_timestamp_tz() functie.



  1. Aankondiging van ClusterControl 1.5 - met automatische back-upverificatie en cloud-upload

  2. Gegevenstype voor het opslaan van ip-adres in SQL Server

  3. TSQL-e-mailvalidatie (zonder regex)

  4. Verbinding maken met de lokale SQL Server-database met behulp van C#