Maison  >  Article  >  base de données  >  Comment convertir la date UTC en fuseau horaire local dans la requête de sélection MySQL ?

Comment convertir la date UTC en fuseau horaire local dans la requête de sélection MySQL ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-17 14:47:01612parcourir

How to Convert UTC Date to Local Time Zone in MySQL Select Query?

Conversion de la date UTC en fuseau horaire local dans la requête de sélection MySQL

Problème

Un MySQL La requête nécessite la conversion d'une colonne "displaytime", qui stocke les horodatages UTC, dans le fuseau horaire local. Cependant, l'utilisation de la fonction CONVERT_TZ() ne produit pas les résultats attendus.

Réponse

1. Vérifiez le message d'erreur

Vérifiez le message d'erreur pour déterminer pourquoi CONVERT_TZ() ne fonctionne pas.

2. Assurez-vous que les types de colonnes sont compatibles

CONVERT_TZ() nécessite que la colonne d'entrée soit un type de données d'horodatage ou de date. Vérifiez le type de données de la colonne "displaytime".

3. Utiliser la syntaxe correcte

La syntaxe correcte pour CONVERT_TZ() est :

CONVERT_TZ(timestamp, source_timezone, destination_timezone)

4. Exemple d'utilisation

Par exemple, pour convertir l'heure d'affichage de UTC en heure de l'Est des États-Unis (-05:00 GMT), utilisez :

SELECT CONVERT_TZ(displaytime, 'UTC', 'America/New_York');

5. Vérifiez la table des fuseaux horaires

Assurez-vous que les tables de fuseaux horaires MySQL sont correctement initialisées. Exécutez les commandes suivantes pour vérifier :

SELECT * FROM mysql.time_zone;
SELECT * FROM mysql.time_zone_name;

6. Charger les données de fuseau horaire

Si les tables de fuseaux horaires sont vides, utilisez le programme mysql_tzinfo_to_sql pour les charger :

mysql_tzinfo_to_sql /usr/share/zoneinfo

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!

Déclaration:
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