Maison > base de données > tutoriel mysql > Comment convertir SQL Server 2008 DATETIMEOFFSET en DATETIME tout en préservant le décalage ?

Comment convertir SQL Server 2008 DATETIMEOFFSET en DATETIME tout en préservant le décalage ?

Susan Sarandon
Libérer: 2024-12-29 21:12:15
original
990 Les gens l'ont consulté

How to Convert SQL Server 2008 DATETIMEOFFSET to DATETIME While Preserving the Offset?

Conversion de DATETIMEOFFSET en DateTime tout en préservant le décalage

Dans SQL Server 2008, la conversion d'un champ DATETIMEOFFSET en champ DATETIME entraîne généralement la perte de informations temporelles dues au décalage. Cependant, il existe un moyen de convertir la valeur tout en conservant le décalage, en la convertissant efficacement en UTC.

La clé de cette conversion réside dans l'utilisation de la fonction CONVERT avec l'argument de style correct. L'argument style spécifie comment la conversion doit être effectuée. Dans ce but spécifique, nous devons utiliser le style 1 :

SELECT CONVERT(datetime2, @createdon, 1)
Copier après la connexion

La requête ci-dessus prend une variable DATETIMEOFFSET (@createdon) et la convertit en valeur DATETIME2 en utilisant le style 1. Ce style convertit la valeur DATETIMEOFFSET en une valeur DATETIME2 en UTC en soustrayant le décalage.

Par exemple, considérons le DATETIMEOFFSET suivant valeur :

2008-12-19 17:30:09.0000000 +11:00
Copier après la connexion

Si nous convertissons cette valeur en utilisant le style 1, nous obtenons :

2008-12-19 06:30:09.0000000
Copier après la connexion

Ce résultat est en heure UTC, supprimant ainsi le décalage.

Notez que la conversion de DATETIME2 en DATETIMEOFFSET à l'aide du style 1 définit simplement le décalage sur 00:00. Cela peut être utilisé comme méthode rapide pour convertir une valeur DATETIMEOFFSET avec un décalage non nul en une valeur DATETIMEOFFSET en UTC :

SELECT convert(datetimeoffset,CONVERT(datetime2, @createdon, 1))
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal