Maison >base de données >tutoriel mysql >Quel sera le résultat si nous essayons d'extraire une valeur temporelle en fournissant uniquement une valeur de date à la fonction MySQL EXTRACT() ?
Lorsque nous essayons d'extraire la valeur horaire de la date, la fonction EXTRACT() donnera la sortie 0 avec un avertissement comme indiqué dans l'exemple ci-dessous -
mysql> Select EXTRACT(Hour from '2017-10-20'); +---------------------------------+ | EXTRACT(Hour from '2017-10-20') | +---------------------------------+ | 0 | +---------------------------------+ 1 row in set, 1 warning (0.00 sec) mysql> Show Warnings; +---------+------+----------------------------------------------+ | Level | Code | Message | +---------+------+----------------------------------------------+ | Warning | 1292 | Truncated incorrect time value: '2017-10-20' | +---------+------+----------------------------------------------+ 1 row in set (0.00 sec)
Maintenant, lorsque nous essayons d'extraire la valeur horaire de la date lors de l'extraction du valeur des minutes, la fonction EXTRACT() donnera la valeur du siècle dans la date en sortie avec un avertissement comme indiqué dans l'exemple donné ci-dessous - p>
mysql> Select EXTRACT(Minute from '2017-10-20'); +-----------------------------------+ | EXTRACT(Minute from '2017-10-20') | +-----------------------------------+ | 20 | +-----------------------------------+ 1 row in set, 1 warning (0.00 sec) mysql> Show Warnings; +---------+------+----------------------------------------------+ | Level | Code | Message | +---------+------+----------------------------------------------+ | Warning | 1292 | Truncated incorrect time value: '2017-10-20' | +---------+------+----------------------------------------------+ 1 row in set (0.00 sec)
Maintenant, lorsque nous essayons d'extraire la valeur des secondes de la date, la fonction EXTRACT() donnera la valeur de l'année en sortie avec un avertissement comme indiqué dans l'exemple ci-dessous -
mysql> Select Extract(Second from '2017-10-20'); +-----------------------------------+ | Extract(Second from '2017-10-20') | +-----------------------------------+ | 17 | +-----------------------------------+ 1 row in set, 1 warning (0.00 sec) mysql> Show Warnings; +---------+------+----------------------------------------------+ | Level | Code | Message | +---------+------+----------------------------------------------+ | Warning | 1292 | Truncated incorrect time value: '2017-10-20' | +---------+------+----------------------------------------------+ 1 row in set (0.00 sec)
En essayant d'obtenir la valeur du temps (heures, minutes et secondes) à partir de la date actuelle, c'est-à-dire en utilisant en position de date Curdate() , nous obtenons des résultats similaires.
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!