Dans MySQL, vous pouvez rencontrer le besoin de manipuler les valeurs de temps dans vos requêtes. Un scénario courant consiste à ajouter une durée spécifique à l'heure actuelle.
La requête suivante tente de récupérer les lignes où le champ start_time de la table des cours est inférieur à l'heure actuelle décalée de deux heures :
SELECT * FROM courses WHERE (now() + 2 hours) > start_time
Cependant, cette syntaxe n'est pas valide dans MySQL. La fonction now() renvoie un horodatage et l'ajout direct d'heures n'est pas pris en charge.
Pour ajouter correctement 2 heures à l'heure actuelle dans MySQL, utilisez DATE_ADD() function:
SELECT * FROM courses WHERE DATE_ADD(NOW(), INTERVAL 2 HOUR) > start_time
La fonction DATE_ADD() prend deux arguments : l'horodatage à modifier (dans ce cas, NOW()) et un INTERVAL précisant la durée et l'unité de temps à ajouter. Dans ce cas, INTERVAL 2 HOUR ajoute deux heures à l'heure actuelle.
La fonction DATE_ADD() offre des capacités polyvalentes de manipulation de la date et de l'heure. Il prend en charge différents intervalles, notamment les jours, les mois et les années. Reportez-vous à la documentation MySQL pour plus de détails sur les fonctions de date et d'heure.
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!