Lors de l'utilisation de la base de données MySQL, le traitement et la conversion des dates sont souvent effectués, ce qui est souvent utilisé dans les statistiques, l'analyse et l'affichage des données. Par conséquent, il est très important que les développeurs et les administrateurs de bases de données maîtrisent les méthodes de conversion de dates MySQL.
MySQL fournit des fonctions de date et une syntaxe riches pour convertir facilement les dates et les heures en différents formats et chaînes. Cet article se concentrera sur la syntaxe et des exemples de conversion de date MySQL, et fournira quelques scénarios et techniques d'application courants.
Format de date
Dans MySQL, les dates et les heures sont stockées au format par défaut. Le format de date par défaut est AAAA-MM-JJ et le format d'heure est HH:MM:SS. Vous pouvez utiliser la fonction DATE_FORMAT() pour convertir les dates et les heures en chaînes dans différents formats.
Le tableau suivant répertorie les options de format de date MySQL :
Format (Format) | Description |
---|---|
%Y | Année à quatre chiffres |
%y | Année numérique à deux chiffres |
%m | Mois à deux chiffres |
%c | Mois à deux chiffres sans zéro |
%d | Jour à deux chiffres |
%e | Date, non zéros non significatifs |
%H | heure (00-23) |
%h | heure (01-12) |
%i | Minutes à deux chiffres |
%s | Secondes à deux chiffres |
%p | "AM" ou "PM" |
%W | Nom complet de la semaine |
%a | Abréviation de la semaine |
%M | Nom complet du mois |
%b | Abréviation du mois |
%j | Nombre de jours dans une année (0-366) |
% U | Le nombre de semaines dans l'année (à partir de dimanche) |
%u | Le nombre de semaines dans l'année (à partir de lundi) |
%X | Le nombre complet de l'année si le dimanche est le premier jour de la nouvelle année, et le la nouvelle année commencera le dernier samedi de l'année précédente |
%V | Le nombre de semaines dans l'année (compté à partir de lundi), si ceci Si une semaine fait partie de l'année suivante, alors cette semaine comptera comme la première semaine de la nouvelle année. |
Fonction Date
MySQL fournit de nombreuses fonctions de date, qui peuvent être utilisées pour la conversion de format, l'interrogation et le calcul de la date et de l'heure. Vous trouverez ci-dessous quelques fonctions de date courantes et leurs descriptions. La fonction
NOW() renvoie la date et l'heure actuelles. Il peut être utilisé pour ajouter des horodatages aux champs des tables de données.
Syntaxe :
SELECT NOW();
Résultat :
2022-01-01 16:12:07
DATE_F OU La fonction MAT () peut convertir la date et l'heure au format spécifié.
Syntaxe :
SELECT DATE_FORMAT(date,format);
Exemple :
SELECT DATE_FORMAT('2022-01-01 16:25:30','%m/%d/%Y %h:%i:%s %p');
Résultat :
01/01/2022 04:25:30 PM
SELECT DATE(date);
SELECT DATE('2022-01-01 16:30:00');
2022-01-01
Grammaire :
SELECT DAY(date);
Exemple :
SELECT DAY('2022-01-01 16:30:00');
Résultat :
01
SELECT MONTH(date);
SELECT MONTH('2022-01-01 16:30:00');
01
YEAR()# La fonction #
SELECT YEAR(date);
Exemple :
SELECT YEAR('2022-01-01 16:30:00');
Résultat :
2022
SELECT DATE_ADD(date, INTERVAL value unit);
SELECT DATE_ADD('2022-01-01', INTERVAL 1 MONTH);
2022-02-01
DATE_DIFF()# La fonction #
DATEDIFF() calcule le nombre de jours entre deux dates.
SELECT DATEDIFF(date1,date2);
SELECT DATEDIFF('2022-01-01','2021-12-31');
Résultat :
1
SELECT STR_TO_DATE(str, format);
SELECT STR_TO_DATE('20220101','%Y%m%d');
2022-01-01
TIME()# La fonction #
TIME() renvoie la partie heure de la valeur date/heure.
Grammaire :
SELECT TIME(datetime);
SELECT TIME('2022-01-01 16:45:30');
16:45:30
Conseils de conversion de date
# #Il est important de maîtriser la syntaxe et les fonctions de la conversion de dates MySQL, mais elle doit encore être utilisée avec flexibilité dans les projets réels. Voici quelques techniques courantes de conversion de date.Calculer la différence entre deux dates
Dans MySQL, vous pouvez utiliser DATE_DIFF(), DATEDIFF(), TO_DAYS(), etc. La fonction calcule la différence entre deux dates. Par exemple, calculez le nombre de jours entre deux dates :SELECT DATEDIFF('2022-01-02','2021-12-31') AS days;
2
SELECT DATE_FORMAT(FROM_UNIXTIME(timestamp),'%Y-%m-%d %H:%i:%s') AS date FROM tableName;
SELECT UNIX_TIMESTAMP('2022-01-01 17:00:00') AS timestamp;
1641054000
SELECT DATE_FORMAT(NOW(),'%Y年%m月') AS month;
Résultat :
2022年01月
Summary
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!