EmpezarEmpieza gratis

Cambiar el desfase de una fecha

Podemos usar la función SWITCHOFFSET() para cambiar la zona horaria de una fecha de tipo DATETIME, DATETIME2 o DATETIMEOFFSET, o de una cadena de fecha válida. SWITCHOFFSET() recibe dos parámetros: la fecha o cadena de entrada y el desfase de la zona horaria. Devuelve la hora en esa nueva zona, así que las 3:00 a. m. en horario de verano del Este pasarán a ser las 2:00 a. m. en horario de verano Central.

Los Juegos Olímpicos de Verano de 2016 en Río de Janeiro empezaron a las 11 p. m. UTC el 8 de agosto de 2016. Partiendo de una cadena con esa fecha y hora, podemos ver qué hora era en otros lugares.

Este ejercicio forma parte del curso

Análisis de series temporales en SQL Server

Ver curso

Instrucciones del ejercicio

  • Completa la llamada de función adecuada para Brasilia (Brasil).
  • Completa la llamada de función y la zona horaria adecuadas para Chicago (Illinois). En agosto, Chicago está 2 horas por detrás de la hora estándar de Brasilia.
  • Completa la llamada de función y la zona horaria adecuadas para Nueva Delhi (India). India no aplica el horario de verano, así que en agosto, Nueva Delhi está 8 horas y media por delante de la hora estándar de Brasilia. Ten en cuenta, al calcular zonas horarias, que Brasilia y Nueva Delhi están a lados opuestos de UTC.

ejercicio interactivo práctico

Prueba este ejercicio completando este código de ejemplo.

DECLARE
	@OlympicsUTC NVARCHAR(50) = N'2016-08-08 23:00:00';

SELECT
	-- Fill in the time zone for Brasilia, Brazil
	___(@OlympicsUTC, '-03:00') AS BrasiliaTime,
	-- Fill in the time zone for Chicago, Illinois
	___(@OlympicsUTC, ___) AS ChicagoTime,
	-- Fill in the time zone for New Delhi, India
	___(@OlympicsUTC, '+___') AS NewDelhiTime;
Editar y ejecutar código