© Éditions Eyrolles
105
chapitre n° 4
Interrogation des données
Quelques exemples d’utilisation (date du jour : mercredi 9 novembre 2005) sont donnés dans
le tableau suivant :
Conversions
MySQL autorise des conversions de types implicites ou explicites.
Implicites
Il est possible d’affecter, dans une expression ou dans une instruction SQL (INSERT,
UPDATE...), une donnée de type numérique (ou date-heure) à une donnée de type VARCHAR
(ou CHAR). Il en va de même pour l’affectation d’une colonne VARCHAR par une donnée de type
date-heure (ou numérique). On parle ainsi de conversions implicites.
Tableau 4-20 Exemples de fonctions pour les dates
Besoin et fonction
Résultat
Date dans 31 jours.
SELECT
;
+--------------------------+
| ADDDATE('2005-11-9', 31) |
+--------------------------+
| 2005-12-10
|
+--------------------------+
1 jour et 1 microseconde après le 9/11/2005,
11 heures, 1 microseconde.
SELECT
"exemple ADDTIME";
+----------------------------+
| exemple ADDTIME
|
+----------------------------+
| 2005-11-10 23:00:00.000000 |
+----------------------------+
Rendez-vous dans 4 mois.
SELECT DATE_ADD(CURRENT_TIMESTAMP,
INTERVAL '4' MONTH) "RDV";
+---------------------+
| RDV
|
+---------------------+
| 2006-03-09 17:07:33 |
+---------------------+
Rendez-vous dans 7 jours, 1 heure et 30 minutes.
SELECT
"RDV
1sem 1h30";
+---------------------+
| RDV 1sem 1h30
|
+---------------------+
| 2005-11-16 18:53:03 |
+---------------------+
Aujourd’hui en anglais.
SELECT
%Y') "Today in English";
+----------------------------+
| Today in English
|
+----------------------------+
| Wednesday 09 November 2005 |
+----------------------------+
Extraction au format numérique du jour, heures et minutes.
SELECT
"DAY_MINUTE";
+------------+
| DAY_MINUTE |
+------------+
|
90102 |
+------------+
Web
ADDDATE('2005-11-9', 31)
ADDTIME('2005-11-09
22:59:59.999999','1 0:0:0.000001')
DATE_ADD(CURRENT_TIMESTAMP,
INTERVAL '7 01:30:00' DAY_SECOND)
DATE_FORMAT(SYSDATE(), '%W %d %M
%Y')
EXTRACT(DAY_MINUTE FROM '2005-11-09
01:02:03')
105
chapitre n° 4
Interrogation des données
Quelques exemples d’utilisation (date du jour : mercredi 9 novembre 2005) sont donnés dans
le tableau suivant :
Conversions
MySQL autorise des conversions de types implicites ou explicites.
Implicites
Il est possible d’affecter, dans une expression ou dans une instruction SQL (INSERT,
UPDATE...), une donnée de type numérique (ou date-heure) à une donnée de type VARCHAR
(ou CHAR). Il en va de même pour l’affectation d’une colonne VARCHAR par une donnée de type
date-heure (ou numérique). On parle ainsi de conversions implicites.
Tableau 4-20 Exemples de fonctions pour les dates
Besoin et fonction
Résultat
Date dans 31 jours.
SELECT
;
+--------------------------+
| ADDDATE('2005-11-9', 31) |
+--------------------------+
| 2005-12-10
|
+--------------------------+
1 jour et 1 microseconde après le 9/11/2005,
11 heures, 1 microseconde.
SELECT
"exemple ADDTIME";
+----------------------------+
| exemple ADDTIME
|
+----------------------------+
| 2005-11-10 23:00:00.000000 |
+----------------------------+
Rendez-vous dans 4 mois.
SELECT DATE_ADD(CURRENT_TIMESTAMP,
INTERVAL '4' MONTH) "RDV";
+---------------------+
| RDV
|
+---------------------+
| 2006-03-09 17:07:33 |
+---------------------+
Rendez-vous dans 7 jours, 1 heure et 30 minutes.
SELECT
"RDV
1sem 1h30";
+---------------------+
| RDV 1sem 1h30
|
+---------------------+
| 2005-11-16 18:53:03 |
+---------------------+
Aujourd’hui en anglais.
SELECT
%Y') "Today in English";
+----------------------------+
| Today in English
|
+----------------------------+
| Wednesday 09 November 2005 |
+----------------------------+
Extraction au format numérique du jour, heures et minutes.
SELECT
"DAY_MINUTE";
+------------+
| DAY_MINUTE |
+------------+
|
90102 |
+------------+
Web
ADDDATE('2005-11-9', 31)
ADDTIME('2005-11-09
22:59:59.999999','1 0:0:0.000001')
DATE_ADD(CURRENT_TIMESTAMP,
INTERVAL '7 01:30:00' DAY_SECOND)
DATE_FORMAT(SYSDATE(), '%W %d %M
%Y')
EXTRACT(DAY_MINUTE FROM '2005-11-09
01:02:03')
