Dans SQL , les dates sont compliquées pour les débutants, car lorsqu'on travaille avec une base de données, le format des données du tableau doit correspondre aux données d'entrée à insérer. Dans divers scénarios, au lieu de la date, c'est datetime (l'heure est également impliquée dans la date) qui est utilisée.
Pour stocker une date ou une valeur de date et d'heure dans une base de données, MySQL propose les types de données suivants :
| DATE | format AAAA-MM-JJ |
| DATEHEURE | format : AAAA-MM-JJ HH:MI : SS |
| HORODATAGE | format : AAAA-MM-JJ HH:MI : SS |
| ANNÉE | formater AAAA ou AA |
Venons-en maintenant à quelques fonctions populaires dans les fonctions de date SQL.
MAINTENANT()
Renvoie la date et l'heure actuelles.
Requête:
SELECT NOW();>
Sortir:

CURDATE()
Renvoie la date actuelle.
Requête:
liste sur Java
SELECT CURDATE();>
Sortir:

CURTIME()
Renvoie l'heure actuelle.
Requête:
SELECT CURTIME();>
Sortir:

chaîne java de concaténation
DATE()
Extrait la partie date d’une expression de date ou de date/heure. Exemple : Pour le tableau ci-dessous nommé « Test »
| Identifiant | Nom | Heure de naissance |
|---|---|---|
| 4120 | Pratique | 1996-09-26 16:44:15,581 |
Requête:
SELECT Name, DATE(BirthTime) AS BirthDate FROM Test;>
Sortir:
| Nom | Date de naissance |
|---|---|
| Pratique | 1996-09-26 |
EXTRAIT()
Renvoie une seule partie d’une date/heure.
Syntaxe
EXTRAIT(unité DE date);
Plusieurs unités peuvent être envisagées mais seules certaines sont utilisées comme MICROSECONDE, SECONDE, MINUTE, HEURE, JOUR, SEMAINE, MOIS, TRIMESTRE, ANNÉE, etc. Et « date » est une expression de date valide. Exemple : Pour le tableau ci-dessous nommé « Test »
| Identifiant | Nom | Heure de naissance |
|---|---|---|
| 4120 | Pratique | 1996-09-26 16:44:15,581 |
Requête:
SELECT Name, Extract(DAY FROM BirthTime) AS BirthDay FROM Test;>
Sortir:
| Nom | Anniversaire |
|---|---|
| Pratique | 26 |
Requête:
SELECT Name, Extract(YEAR FROM BirthTime) AS BirthYear FROM Test;>
Sortir:
| Nom | Année de naissance |
|---|---|
| Pratique | mille neuf cent quatre vingt seize |
Requête:
SELECT Name, Extract(SECOND FROM BirthTime) AS BirthSecond FROM Test;>
Sortir:
| Nom | NaissanceDeuxième |
|---|---|
| Pratique | 581 |
DATE_ADD()
Ajoute un intervalle de temps spécifié à une date.
Syntaxe:
inverser la chaîne en java
DATE_ADD(date, type d'expression INTERVAL);
Où, date – expression de date valide, et expr est le nombre d'intervalles que nous voulons ajouter. et le type peut être l'un des éléments suivants : MICROSECOND, SECOND, MINUTE, HOUR, DAY, WEEK, Month, Quarter, YEAR, etc. Exemple : Pour le tableau ci-dessous nommé 'Test'
| Identifiant | Nom | Heure de naissance |
|---|---|---|
| 4120 | Pratique | 1996-09-26 16:44:15,581 |
Requête:
SELECT Name, DATE_ADD(BirthTime, INTERVAL 1 YEAR) AS BirthTimeModified FROM Test;>
Sortir:
| Nom | Heure de naissanceModifiée |
|---|---|
| Pratique | 1997-09-26 16:44:15,581 |
Requête:
SELECT Name, DATE_ADD(BirthTime, INTERVAL 30 DAY) AS BirthDayModified FROM Test;>
Sortir:
| Nom | Jour de naissanceModifié |
|---|---|
| Pratique | 1996-10-26 16:44:15,581 |
Requête:
SELECT Name, DATE_ADD(BirthTime, INTERVAL 4 HOUR) AS BirthHourModified FROM Test;>
Sortir:
| Nom | NaissanceDeuxième |
|---|---|
| Pratique | 1996-10-26 20:44:15,581 |
DATE_SUB()
Soustrait un intervalle de temps spécifié d’une date. La syntaxe de DATE_SUB est la même que celle de DATE_ADD, la différence est que DATE_SUB est utilisé pour soustraire un intervalle de date donné.
DATEIFF()
Renvoie le nombre de jours entre deux dates.
Syntaxe:
comment convertir une chaîne en entier
DATEDIFF(date1, date2);
date1 & date2- expression date/heure
Requête:
SELECT DATEDIFF('2017-01-13','2017-01-03') AS DateDiff;> Sortir:
| DateDiff |
|---|
| dix |
FORMAT DE DATE()
Affiche les données de date/heure dans différents formats.
Syntaxe:
DATE_FORMAT(date,format);
la date est une date valide et le format spécifie le format de sortie pour la date/heure. Les formats pouvant être utilisés sont :
- %a-Nom abrégé du jour de la semaine (dim-sam)
- %b-Nom du mois abrégé (janvier-décembre)
- %c-Mois, numérique (0-12)
- %J-Day du mois avec suffixe anglais (0ème, 1er, 2ème, 3ème)
- %d-Jour du mois, numérique (00-31)
- %e-Jour du mois, numérique (0-31)
- %f-Microsecondes (000000-999999)
- %H-Heure (00-23)
- %h-Heure (01-12)
- %I-Heure (01-12)
- %i-Minutes, numérique (00-59)
- %j-Jour de l'année (001-366)
- %k-heure (0-23)
- %l-heure (1-12)
- %M-Nom du mois (janvier-décembre)
- %m-Mois, numérique (00-12)
- %p-AM ou PM
- %r-Time, 12 heures (hh:mm : ss suivi de AM ou PM)
- %S-secondes (00-59)
- %s-secondes (00-59)
- %T-Heure, 24 heures (hh:mm: ss)
- %U-Week (00-53) où dimanche est le premier jour de la semaine
- %u-Week (00-53) où lundi est le premier jour de la semaine
- %V-Week (01-53) où dimanche est le premier jour de la semaine, utilisé avec %X
- %v-Week (01-53) où lundi est le premier jour de la semaine, utilisé avec %x
- %W-Nom du jour de la semaine (dimanche-samedi)
- %w-Jour de la semaine (0=dimanche, 6=samedi)
- %X-Year pour la semaine où le dimanche est le premier jour de la semaine, quatre chiffres, utilisé avec %V
- %x-Année pour la semaine où lundi est le premier jour de la semaine, quatre chiffres, utilisé avec %v
- %Y-Year, numérique, quatre chiffres
- %a-Année, numérique, deux chiffres