Les conversions de date avec SQL

La conversion des types date et datetime en sql et pour ma part sur SQL server est assez bien faite je trouve.
On converti simplement la date avec la fonction CONVERT en précisant le style de rendu souhaité.

Par exemple, je souhaite afficher ma date sans les heures / minutes / secondes au format français :

CONVERT(NVARCHAR(10), GETDATE(), 103) => 11/01/2017

Si par exemple, je veux afficher ce même format mais avec l’année sur 2 chiffres, le code devient 3 :

CONVERT(NVARCHAR(8), GETDATE(), 3) => 11/01/17

Voici le tableau des coder de style des dates disponible :

Méthode Résultat Standard
CONVERT(NVARCHAR(30), GETDATE(), 0) janv 14 2017 11:42AM Default
CONVERT(NVARCHAR(30), GETDATE(), 100) janv 14 2017 11:42AM
CONVERT(NVARCHAR(30), GETDATE(), 1) 01/14/17
CONVERT(NVARCHAR(30), GETDATE(), 101) 01/14/2017 USA
CONVERT(NVARCHAR(30), GETDATE(), 2) 17.01.14
CONVERT(NVARCHAR(30), GETDATE(), 102) 2017.01.14 ANSI
CONVERT(NVARCHAR(30), GETDATE(), 3) 14/01/17
CONVERT(NVARCHAR(30), GETDATE(), 103) 14/01/2017 British/French
CONVERT(NVARCHAR(30), GETDATE(), 4) 14.01.17
CONVERT(NVARCHAR(30), GETDATE(), 104) 14.01.2017 German
CONVERT(NVARCHAR(30), GETDATE(), 5) 14-01-17
CONVERT(NVARCHAR(30), GETDATE(), 105) 14-01-2017 Italian
CONVERT(NVARCHAR(30), GETDATE(), 6) 14 janv 17
CONVERT(NVARCHAR(30), GETDATE(), 106) 14 janv 2017
CONVERT(NVARCHAR(30), GETDATE(), 7) janv 14, 17
CONVERT(NVARCHAR(30), GETDATE(), 107) janv 14, 2017
CONVERT(NVARCHAR(30), GETDATE(), 8) 11:46:14
CONVERT(NVARCHAR(30), GETDATE(), 108) 11:46:14
CONVERT(NVARCHAR(30), GETDATE(), 9) janv 14 2017 11:46:56:353AM
CONVERT(NVARCHAR(30), GETDATE(), 109) janv 14 2017 11:46:56:353AM Default + millisec
CONVERT(NVARCHAR(30), GETDATE(), 10) 01-14-17
CONVERT(NVARCHAR(30), GETDATE(), 110) 01-14-2017 USA
CONVERT(NVARCHAR(30), GETDATE(), 11) 17/01/14
CONVERT(NVARCHAR(30), GETDATE(), 111) 2017/01/14 Japan
CONVERT(NVARCHAR(30), GETDATE(), 12) 170114
CONVERT(NVARCHAR(30), GETDATE(), 112) 20170114 ISO
CONVERT(NVARCHAR(30), GETDATE(), 13) 14 janv 2017 11:49:40:493
CONVERT(NVARCHAR(30), GETDATE(), 113) 14 janv 2017 11:49:40:493 Europe default + millisec
CONVERT(NVARCHAR(30), GETDATE(), 14) 11:50:06:607
CONVERT(NVARCHAR(30), GETDATE(), 114) 11:50:06:607
CONVERT(NVARCHAR(30), GETDATE(), 20) 2017-01-14 11:50:54
CONVERT(NVARCHAR(30), GETDATE(), 120) 2017-01-14 11:50:54 ODBC canonical
CONVERT(NVARCHAR(30), GETDATE(), 21) 2017-01-14 11:51:20.730
CONVERT(NVARCHAR(30), GETDATE(), 121) 2017-01-14 11:51:20.730 ODBC canonical (with milliseconds)
CONVERT(NVARCHAR(30), GETDATE(), 146) 2017-01-14T11:52:20.963 ISO8601
CONVERT(NVARCHAR(30), GETDATE(), 127) 2017-01-12T11:52:20.963 ISO8601 with time zone Z
CONVERT(NVARCHAR(30), GETDATE(), 130) 14 ربيع الثاني 1438 11:52:20:963AM Hijiri
CONVERT(NVARCHAR(30), GETDATE(), 131) 14/04/1438 11:52:20:963AM Hijiri

Vous aimez mes articles ? Offrez-moi un café !