CommencerCommencez gratuitement

Utiliser la DMV des fuseaux horaires pour rechercher des heures

La fonction SWITCHOFFSET() a une limite peu pratique : vous devez connaître vous‑même la valeur du décalage. Vous vous souvenez peut‑être que l’heure normale de l’Est (US Eastern Standard Time) est UTC -05:00 et l’heure d’été de l’Est (Eastern Daylight Time) est UTC -04:00, mais connaître l’India Standard Time ou le Tuvalu Time peut être plus difficile.

Heureusement, nous disposons d’une vue de gestion dynamique (DMV) pour nous aider : sys.time_zone_info. Elle interroge l’ensemble des fuseaux horaires disponibles sur le système d’exploitation (dans le registre Windows ou /usr/share/zoneinfo sur Linux ou macOS).

Les Jeux olympiques d’été 2016 à Rio de Janeiro ont commencé à 23 h UTC le 8 août 2016. En partant d’une chaîne qui contient cette date et cette heure, nous pouvons voir à quelle heure cela correspondait dans d’autres lieux en connaissant uniquement le nom du fuseau horaire, sans son décalage.

Cet exercice fait partie du cours

<cours>Analyse de séries temporelles dans SQL Server</cours>
Voir le cours

Exercice interactif pratique

Transformez la théorie en action avec l’un de nos exercices interactifs

Commencer l’exercice