En realidad, hay 3 zonas horarias aquí, no 2
- la zona horaria de la sesión/cliente
- Mostrado en SESSIONTIMEZONE
- Esta es la zona horaria de CURRENT_DATE, LOCALTIMESTAMP y CURRENT_TIMESTAMP. La diferencia entre esos 3 es el tipo de devolución, devuelven una FECHA, TIMESTAMP y TIMESTAMP CON ZONA HORARIA respectivamente)
- La zona horaria de la base de datos
- Mostrado en DBTIMEZONE
- Esta es la zona horaria utilizada para el almacenamiento interno de valores TIMESTAMP CON LOCAL TIME ZONE. Tenga en cuenta que los valores se convierten a/desde la zona horaria de la sesión al insertar/seleccionar, por lo que en realidad no es tan importante como parece
- Esta NO es la zona horaria de SYSDATE/SYSTIMESTAMP
- La zona horaria del sistema operativo de la base de datos
- En Unix, se basa en la variable TZ cuando se inicia Oracle
- Esta es la zona horaria de SYSDATE y SYSTIMESTAMP
En su primer ejemplo, puedo ver que la sesión TZ es UTC-6, la base de datos TZ es UTC y la zona horaria del sistema operativo de la base de datos es UTC-6.
En su segundo ejemplo, puedo ver que la sesión TZ es UTC-6, la base de datos TZ es UTC+2 y la zona horaria del sistema operativo de la base de datos es UTC+1.