Recherche…


Syntaxe

  • EOMONTH ( start_date [, month_to_add])

Remarques

Selon https://msdn.microsoft.com/en-us/library/ms187819.aspx , DateTime s ne sont précis qu'à 3 ms.

Arrondi de date / heure Les valeurs de date / heure de seconde fraction fractionnaire sont arrondies aux incréments de .000, .003 ou .007 secondes, comme indiqué dans le tableau suivant.

Valeur spécifiée par l'utilisateur Valeur stockée du système
01/01/98 23: 59: 59.999 1998-01-02 00: 00: 00.000
------ ------
01/01/98 23: 59: 59.995 1998-01-01 23: 59: 59.997
01/01/98 23: 59: 59.996
01/01/98 23: 59: 59.997
01/01/98 23: 59: 59,998
------ ------
01/01/98 23: 59: 59.992 1998-01-01 23: 59: 59.993
01/01/98 23: 59: 59.993
01/01/98 23: 59: 59.994
------ ------
01/01/98 23: 59: 59.990 1998-01-01 23: 59: 59.990
01/01/98 23: 59: 59.991
------ ------

Si vous avez besoin de plus de précision, utilisez time , datetime2 ou datetimeoffset .

Formatage de la date et de l'heure avec CONVERT

Vous pouvez utiliser la fonction CONVERT pour convertir un type de données datetime en une chaîne formatée.

SELECT GETDATE() AS [Result] -- 2016-07-21 07:56:10.927

Vous pouvez également utiliser des codes intégrés pour convertir dans un format spécifique. Voici les options intégrées à SQL Server:

DECLARE @convert_code INT = 100 -- See Table Below
SELECT CONVERT(VARCHAR(30), GETDATE(), @convert_code) AS [Result]
@convert_code Résultat
100 "21 juillet 2016 7:56"
101 "21/07/2016"
102 "2016.07.21"
103 "21/07/2016"
104 "21.07.2016"
105 "21-07-2016"
106 "21 juil. 2016"
107 "21 juillet 2016"
108 "07:57:05"
109 "21 juillet 2016 7: 57: 45: 707"
110 "21-07-2016"
111 "2016/07/21"
112 "20160721"
113 "21 juil. 2016 07: 57: 59: 553"
114 "07: 57: 59: 553"
120 "2016-07-21 07:57:59"
121 "2016-07-21 07: 57: 59.553"
126 "2016-07-21T07: 58: 34.340"
127 "2016-07-21T07: 58: 34.340"
130 "16 ???? 1437 7: 58: 34: 340AM"
131 "16/10/1437 7: 58: 34: 340AM"
SELECT GETDATE() AS [Result]                                -- 2016-07-21 07:56:10.927
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),100) AS [Result] -- Jul 21 2016  7:56AM
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),101) AS [Result] -- 07/21/2016
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),102) AS [Result] -- 2016.07.21
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),103) AS [Result] -- 21/07/2016
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),104) AS [Result] -- 21.07.2016
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),105) AS [Result] -- 21-07-2016
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),106) AS [Result] -- 21 Jul 2016
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),107) AS [Result] -- Jul 21, 2016
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),108) AS [Result] -- 07:57:05
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),109) AS [Result] -- Jul 21 2016  7:57:45:707AM
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),110) AS [Result] -- 07-21-2016
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),111) AS [Result] -- 2016/07/21
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),112) AS [Result] -- 20160721
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),113) AS [Result] -- 21 Jul 2016 07:57:59:553
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),114) AS [Result] -- 07:57:59:553
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),120) AS [Result] -- 2016-07-21 07:57:59
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),121) AS [Result] -- 2016-07-21 07:57:59.553
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),126) AS [Result] -- 2016-07-21T07:58:34.340
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),127) AS [Result] -- 2016-07-21T07:58:34.340
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),130) AS [Result] -- 16 ???? 1437  7:58:34:340AM
UNION SELECT CONVERT(VARCHAR(30),GETDATE(),131) AS [Result] -- 16/10/1437  7:58:34:340AM

Formatage de la date et de l'heure à l'aide de FORMAT

SQL Server 2012

Vous pouvez utiliser la nouvelle fonction: FORMAT() .

En utilisant cela, vous pouvez transformer vos champs DATETIME en votre propre format VARCHAR personnalisé.

Exemple

DECLARE @Date DATETIME = '2016-09-05 00:01:02.333'

SELECT FORMAT(@Date, N'dddd, MMMM dd, yyyy hh:mm:ss tt')

Lundi 5 septembre 2016 12:01:02

Arguments

Étant donné que DATETIME cours de formatage est 2016-09-05 00:01:02.333 , le tableau ci-dessous indique leur résultat pour l'argument fourni.

Argument Sortie
aaaa 2016
yy 16
MMMM septembre
MM 09
M 9
dddd Lundi
ddd Lun
dd 05
5
HH 00
H 0
hh 12
h 12
mm 01
m 1
ss 02
s 2
tt UN M
t UNE
fff 333
ff 33
F 3

Vous pouvez également fournir un seul argument à la fonction FORMAT() pour générer une sortie pré-formatée:

DECLARE @Date DATETIME = '2016-09-05 00:01:02.333'

SELECT FORMAT(@Date, N'U')

Lundi 5 septembre 2016 04:01:02

Argument unique Sortie
Lundi 5 septembre 2016
9/5/2016
F Lundi 5 septembre 2016 12:01:02
F Lundi 5 septembre 2016 00h01
g 05/09/2016 12:01:02 AM
g 05/09/2016 00:01 AM
M Septembre 05
O 2016-09-05T00: 01: 02.3330000
R Lun. 05 sept. 2016 00:01:02 GMT
s 2016-09-05T00: 01: 02
T 12h01: 02h
t 00h01
U Lundi 5 septembre 2016 04:01:02
tu 2016-09-05 00: 01: 02Z
Y Septembre 2016

Remarque: la liste ci-dessus utilise la culture en-US . Une culture différente peut être spécifiée pour FORMAT() via le troisième paramètre:

DECLARE @Date DATETIME = '2016-09-05 00:01:02.333'

SELECT FORMAT(@Date, N'U', 'zh-cn')

2016 年 9 月 5 日 4:01:02

Récupère le DateTime actuel

Les fonctions GETDATE et GETUTCDATE chacune la date et l'heure actuelles sans décalage de fuseau horaire.

La valeur de retour des deux fonctions est basée sur le système d'exploitation de l'ordinateur sur lequel l'instance de SQL Server est exécutée.

La valeur de retour de GETDATE représente l'heure actuelle dans le même fuseau horaire que le système d'exploitation. La valeur de retour de GETUTCDATE représente l'heure UTC actuelle.

L'une ou l'autre fonction peut être incluse dans la clause SELECT d'une requête ou dans le cadre d'une expression booléenne dans la clause WHERE .

Exemples:

-- example query that selects the current time in both the server time zone and UTC
SELECT GETDATE() as SystemDateTime, GETUTCDATE() as UTCDateTime

-- example query records with EventDate in the past.
SELECT * FROM MyEvents WHERE EventDate < GETDATE() 

Il existe quelques autres fonctions intégrées qui renvoient des variations différentes de la date et heure actuelle:

SELECT 
    GETDATE(),          --2016-07-21 14:27:37.447
    GETUTCDATE(),       --2016-07-21 18:27:37.447
    CURRENT_TIMESTAMP,  --2016-07-21 14:27:37.447
    SYSDATETIME(),      --2016-07-21 14:27:37.4485768
    SYSDATETIMEOFFSET(),--2016-07-21 14:27:37.4485768 -04:00
    SYSUTCDATETIME()    --2016-07-21 18:27:37.4485768

DATEADD pour l'ajout et la soustraction de périodes

Syntaxe générale:

DATEADD (datepart , number , datetime_expr)  

Pour ajouter une mesure de temps, le number doit être positif. Pour soustraire une mesure de temps, le number doit être négatif.

Exemples

DECLARE @now DATETIME2 = GETDATE();
SELECT @now;                        --2016-07-21 14:39:46.4170000
SELECT DATEADD(YEAR, 1, @now)       --2017-07-21 14:39:46.4170000
SELECT DATEADD(QUARTER, 1, @now)    --2016-10-21 14:39:46.4170000
SELECT DATEADD(WEEK, 1, @now)       --2016-07-28 14:39:46.4170000
SELECT DATEADD(DAY, 1, @now)        --2016-07-22 14:39:46.4170000
SELECT DATEADD(HOUR, 1, @now)       --2016-07-21 15:39:46.4170000
SELECT DATEADD(MINUTE, 1, @now)     --2016-07-21 14:40:46.4170000
SELECT DATEADD(SECOND, 1, @now)     --2016-07-21 14:39:47.4170000
SELECT DATEADD(MILLISECOND, 1, @now)--2016-07-21 14:39:46.4180000

REMARQUE: DATEADD accepte également les abréviations dans le paramètre datepart . L'utilisation de ces abréviations est généralement déconseillée car elles peuvent être source de confusion ( m vs mi , ww vs w , etc.).

Date de référence des pièces

Ce sont les datepart valeurs disponibles pour les fonctions de date et heure:

datepart Abréviations
an yyyy
trimestre qq, q
mois mm, m
jour de l'année dy, y
journée dd, d
la semaine wk, ww
jour de la semaine dw, w
heure hh
minute mi, n
seconde ss, s
milliseconde Mme
microseconde mcs
nanoseconde ns

NOTE : L'utilisation des abréviations est généralement déconseillée car elles peuvent être source de confusion ( m vs mi , ww vs w , etc.). La version longue de la datepart représentation favorise la clarté et la lisibilité, et doit être utilisé chaque fois que possible ( month , minute , week , weekday de la weekday , etc.).

DATEDIFF pour calculer les différences de période

Syntaxe générale:

DATEDIFF (datepart, datetime_expr1, datetime_expr2)

Il retournera un nombre positif si datetime_expr est dans le passé relatif à datetime_expr2 , et un nombre négatif sinon.

Exemples

DECLARE @now DATETIME2 = GETDATE();
DECLARE @oneYearAgo DATETIME2 = DATEADD(YEAR, -1, @now);
SELECT @now                                    --2016-07-21 14:49:50.9800000
SELECT @oneYearAgo                             --2015-07-21 14:49:50.9800000
SELECT DATEDIFF(YEAR, @oneYearAgo, @now)       --1
SELECT DATEDIFF(QUARTER, @oneYearAgo, @now)    --4
SELECT DATEDIFF(WEEK, @oneYearAgo, @now)       --52
SELECT DATEDIFF(DAY, @oneYearAgo, @now)        --366
SELECT DATEDIFF(HOUR, @oneYearAgo, @now)       --8784
SELECT DATEDIFF(MINUTE, @oneYearAgo, @now)     --527040
SELECT DATEDIFF(SECOND, @oneYearAgo, @now)     --31622400

REMARQUE: DATEDIFF accepte également les abréviations dans le paramètre datepart . L'utilisation de ces abréviations est généralement déconseillée car elles peuvent être source de confusion ( m vs mi , ww vs w , etc.).

DATEDIFF peut également être utilisé pour déterminer le décalage entre l'heure UTC et l'heure locale du serveur SQL. L'instruction suivante peut être utilisée pour calculer le décalage entre l'heure UTC et l'heure locale (y compris le fuseau horaire).

select  DATEDIFF(hh, getutcdate(), getdate()) as 'CentralTimeOffset'

DATEPART & DATENAME

DATEPART renvoie la datepart spécifiée de l'expression datetime spécifiée en tant que valeur numérique.

DATENAME renvoie une chaîne de caractères qui représente la datepart l'heure spécifiées pour la date spécifiée. En pratique, DATENAME est surtout utile pour obtenir le nom du mois ou du jour de la semaine.

Il y a aussi quelques fonctions raccourcies pour obtenir l'année, le mois ou le jour d'une expression_dateheure, qui se comportent comme DATEPART avec leurs respectives datepart unités.

Syntaxe:

DATEPART ( datepart , datetime_expr )
DATENAME ( datepart , datetime_expr )
DAY ( datetime_expr )
MONTH ( datetime_expr )
YEAR ( datetime_expr )

Exemples:

DECLARE @now DATETIME2 = GETDATE();
SELECT @now                       --2016-07-21 15:05:33.8370000
SELECT DATEPART(YEAR, @now)       --2016
SELECT DATEPART(QUARTER, @now)    --3
SELECT DATEPART(WEEK, @now)       --30
SELECT DATEPART(HOUR, @now)       --15
SELECT DATEPART(MINUTE, @now)     --5
SELECT DATEPART(SECOND, @now)     --33
-- Differences between DATEPART and DATENAME:
SELECT DATEPART(MONTH, @now)      --7
SELECT DATENAME(MONTH, @now)      --July
SELECT DATEPART(WEEKDAY, @now)    --5
SELECT DATENAME(WEEKDAY, @now)    --Thursday
--shorthand functions
SELECT DAY(@now)    --21
SELECT MONTH(@now)  --7
SELECT YEAR(@now)   --2016

REMARQUE: DATEPART et DATENAME acceptent également les abréviations dans le paramètre datepart . L'utilisation de ces abréviations est généralement déconseillée car elles peuvent être source de confusion ( m vs mi , ww vs w , etc.).

Obtenir le dernier jour d'un mois

En utilisant les fonctions DATEADD et DATEDIFF , il est possible de renvoyer la dernière date d'un mois.

SELECT DATEADD(d, -1, DATEADD(m, DATEDIFF(m, 0, '2016-09-23') + 1, 0))
-- 2016-09-30 00:00:00.000
SQL Server 2012

La fonction EOMONTH fournit un moyen plus concis de renvoyer la dernière date d'un mois et possède un paramètre facultatif pour compenser le mois.

SELECT EOMONTH('2016-07-21')        --2016-07-31
SELECT EOMONTH('2016-07-21', 4)     --2016-11-30
SELECT EOMONTH('2016-07-21', -5)    --2016-02-29

Retourner la date juste d'un DateTime

Il existe plusieurs façons de renvoyer une date à partir d'un objet DateTime

  1. SELECT CONVERT(Date, GETDATE())
  2. SELECT DATEADD(dd, 0, DATEDIFF(dd, 0, GETDATE())) renvoie 2016-07-21 00: 00: 00.000
  3. SELECT CAST(GETDATE() AS DATE)
  4. SELECT CONVERT(CHAR(10),GETDATE(),111)
  5. SELECT FORMAT(GETDATE(), 'yyyy-MM-dd')

Notez que les options 4 et 5 retournent une chaîne, pas une date.

Fonction de création pour calculer l'âge d'une personne à une date précise

Cette fonction prendra 2 paramètres datetime, le DOB et une date pour vérifier l’âge à

  CREATE FUNCTION [dbo].[Calc_Age]
    (
    @DOB datetime , @calcDate datetime 
    )
    RETURNS int
    AS
   BEGIN
declare @age int

IF (@calcDate < @DOB  )
RETURN -1

-- If a DOB is supplied after the comparison date, then return -1
SELECT @age = YEAR(@calcDate) - YEAR(@DOB) +
  CASE WHEN DATEADD(year,YEAR(@calcDate) - YEAR(@DOB)
  ,@DOB) > @calcDate THEN -1 ELSE 0 END
    

RETURN @age
    

END

par exemple pour vérifier l'âge d'une personne née le 1/1/2000

SELECT  dbo.Calc_Age('2000-01-01',Getdate())

OBJET DE DATE CROSS PLATFORM

SQL Server 2012

Dans Transact SQL, vous pouvez définir un objet comme Date (ou DateTime ) à l'aide de la fonction [DATEFROMPARTS][1] (ou [DATETIMEFROMPARTS][1] ) comme suit:

 DECLARE @myDate DATE=DATEFROMPARTS(1988,11,28) 
 DECLARE @someMoment DATETIME=DATEFROMPARTS(1988,11,28,10,30,50,123)

Les paramètres que vous fournissez sont Année, Mois, Jour pour la fonction DATEFROMPARTS et, pour la fonction DATETIMEFROMPARTS , vous devez indiquer l'année, le mois, le jour, l'heure, les minutes, les secondes et les millisecondes.

Ces méthodes sont utiles et valent la peine d'être utilisées, car l'utilisation d'une chaîne simple pour créer une date (ou une date / heure) peut échouer en fonction de la région, de l'emplacement ou du format de date de la machine hôte.

Format de date étendu

Format de date Instruction SQL Échantillon sortie
AA-MM-JJ SELECT RIGHT (CONVERT (VARCHAR (10), SYSDATETIME (), 20), 8) AS [AA-MM-JJ]
SELECT REPLACE (CONVERT (VARCHAR (8), SYSDATETIME (), 11), '/', '-') AS [AA-MM-JJ]
11-06-08
AAAA-MM-JJ SELECT CONVERT (VARCHAR (10), SYSDATETIME (), 120) AS [AAAA-MM-JJ]
SELECT REPLACE (CONVERT (VARCHAR (10), SYSDATETIME (), 111), '/', '-') AS [AAAA-MM-JJ]
2011-06-08
AAAA-MD SELECT CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)) + '-' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '-' + CAST (DAY (SYSDATETIME ()) AS VARCHAR ( 2)) COMME [AAAA-MD] 2011-6-8
YY-MD SELECT RIGHT (CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)), 2) + '-' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '-' + CAST (DAY (SYSDATETIME ( )) AS VARCHAR (2)) AS [YY-MD] 11-6-8
MD-AAAA SELECT CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '-' + CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '-' + CAST (YEAR (SYSDATETIME ()) AS VARCHAR ( 4)) AS [MD-YYYY] 6-8-2011
MD-YY SELECT CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '-' + CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '-' + RIGHT (CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)), 2) AS [MD-YY] 6-8-11
DM-AAAA SELECT CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '-' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '-' + CAST (YEAR (SYSDATETIME ()) AS VARCHAR ( 4)) AS [DM-YYYY] 8-6-2011
DM-YY SELECT CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '-' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '-' + RIGHT (CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)), 2) AS [DM-YY] 8-6-11
AA-MM SELECT RIGHT (CONVERT (VARCHAR (7), SYSDATETIME (), 20), 5) AS [AA-MM]
SELECT SUBSTRING (CONVERT (VARCHAR (10), SYSDATETIME (), 120), 3, 5) AS [YY-MM]
11-06
AAAA-MM SELECT CONVERT (VARCHAR (7), SYSDATETIME (), 120) AS [AAAA-MM] 2011-06
Y-M SELECT RIGHT (CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)), 2) + '-' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) AS [YY-M] 11-6
AAAA-M SELECT CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)) + '-' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) AS [YYYY-M] 2011-6
MM-YY SELECT RIGHT (CONVERT (VARCHAR (8), SYSDATETIME (), 5), 5) AS [MM-YY]
SELECT SUBSTRING (CONVERT (VARCHAR (8), SYSDATETIME (), 5), 4, 5) AS [MM-YY]
06-11
MM-AAAA SELECT RIGHT (CONVERT (VARCHAR (10), SYSDATETIME (), 105), 7) AS [MM-AAAA] 06-2011
M-YY SELECT CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '-' + RIGHT (CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)), 2) AS [M-YY] 6-11
M-AAAA SELECT CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '-' + CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)) AS [M-YYYY] 6-2011
MM-JJ SELECT CONVERT (VARCHAR (5), SYSDATETIME (), 10) AS [MM-DD] 06-08
DD-MM SELECT CONVERT (VARCHAR (5), SYSDATETIME (), 5) AS [JJ-MM] 08-06
MARYLAND SELECT CAST (MOIS (SYSDATETIME ()) AS VARCHAR (2)) + '-' + CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) AS [MD] 6-8
DM SELECT CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '-' + CAST (MOIS (SYSDATETIME ()) AS VARCHAR (2)) AS [DM] 8-6
M / J / AAAA SELECT CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '/' + CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '/' + CAST (YEAR (SYSDATETIME ()) AS VARCHAR ( 4)) AS [M / J / AAAA] 6/8/2011
M / J / AA SELECT CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '/' + CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '/' + RIGHT (CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)), 2) AS [M / D / YY] 6/8/11
J / M / AAAA SELECT CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '/' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '/' + CAST (YEAR (SYSDATETIME ()) AS VARCHAR ( 4)) AS [J / M / AAAA] 8/6/2011
D / M / YY SELECT CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '/' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '/' + RIGHT (CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)), 2) AS [D / M / YY] 8/6/11
AAAA / M / J SELECT CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)) + '/' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '/' + CAST (DAY (SYSDATETIME ()) AS VARCHAR ( 2)) COMME [AAAA / M / J] 2011/6/8
YY / M / D SELECT RIGHT (CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)), 2) + '/' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '/' + CAST (DAY (SYSDATETIME ( )) AS VARCHAR (2)) AS [YY / M / D] 11/6/8
MM / AA SELECT RIGHT (CONVERT (VARCHAR (8), SYSDATETIME (), 3), 5) AS [MM / YY] 06/11
MM / AAAA SELECT RIGHT (CONVERT (VARCHAR (10), SYSDATETIME (), 103), 7) AS [MM / AAAA] 06/2011
M / YY SELECT CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '/' + RIGHT (CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)), 2) AS [M / YY] 6/11
M / AAAA SELECT CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '/' + CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)) AS [M / YYYY] 6/2011
AA / MM SELECT CONVERT (VARCHAR (5), SYSDATETIME (), 11) AS [AA / MM] 11/06
AAAA / MM SELECT CONVERT (VARCHAR (7), SYSDATETIME (), 111) AS [AAAA / MM] 2011/06
YY / M SELECT RIGHT (CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)), 2) + '/' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) AS [YY / M] 11/6
AAAA / M SELECT CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)) + '/' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) AS [YYYY / M] 2011/6
MM / JJ SELECT CONVERT (VARCHAR (5), SYSDATETIME (), 1) AS [MM / DD] 06/08
JJ / MM SELECT CONVERT (VARCHAR (5), SYSDATETIME (), 3) AS [JJ / MM] 08/06
MARYLAND SELECT CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '/' + CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) AS [M / D] 6/8
D / M SELECT CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '/' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) AS [D / M] 8/6
MM.DD.AAAA SELECT REPLACE (CONVERT (VARCHAR (10), SYSDATETIME (), 101), '/', '.') AS [MM.DD.YYYY] 06.08.2011
MM.DD.YY SELECT REPLACE (CONVERT (VARCHAR (8), SYSDATETIME (), 1), '/', '.') AS [MM.DD.YY] 06.08.11
MDYYYY SELECT CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '.' + CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '.' + CAST (ANNÉE (SYSDATETIME ()) AS VARCHAR (4)) COMME [MDYYYY] 6.8.2011
MDYY SELECT CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '.' + CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '.' + DROIT (CAST (ANNÉE (SYSDATETIME ()) AS VARCHAR (4)), 2) AS [MDYY] 6.8.11
JJ.MM.AAAA SELECT CONVERT (VARCHAR (10), SYSDATETIME (), 104) AS [JJ.MM.AAAA] 08.06.2011
JJ.MM.AA SELECT CONVERT (VARCHAR (10), SYSDATETIME (), 4) AS [JJ.MM.AA] 08.06.11
DMYYYY SELECT CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '.' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '.' + CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)) AS [DMYYYY] 8.6.2011
DMYY SELECT CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '.' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '.' + DROIT (CAST (ANNÉE (SYSDATETIME ()) AS VARCHAR (4)), 2) AS [DMYY] 8.6.11
AAAA.MD SELECT CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)) + '.' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '.' + CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) AS [AAAA.MD] 2011.6.8
YY.MD SELECT RIGHT (CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)), 2) + '.' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '.' + CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) AS [YY.MD] 11.6.8
MM.AAAA SELECT RIGHT (CONVERT (VARCHAR (10), SYSDATETIME (), 104), 7) AS [MM.YYYY] 06.2011
MM.YY SELECT RIGHT (CONVERT (VARCHAR (8), SYSDATETIME (), 4), 5) AS [MM.YY] 06.11
M.YYYY SELECT CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '.' + CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)) AS [M.YYYY] 6.2011
M.YY SELECT CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '.' + DROIT (CAST (ANNÉE (SYSDATETIME ()) AS VARCHAR (4)), 2) AS [M.YY] 6.11
AAAA.MM SELECT CONVERT (VARCHAR (7), SYSDATETIME (), 102) AS [AAAA.MM] 2011.06
YY.MM SELECT CONVERT (VARCHAR (5), SYSDATETIME (), 2) AS [YY.MM] 11.06
AAAA.M SELECT CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)) + '.' + CAST (MOIS (SYSDATETIME ()) AS VARCHAR (2)) AS [AAAA.M] 2011.6
YY.M SELECT RIGHT (CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)), 2) + '.' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) AS [YY.M] 11.6
MM.DD SELECT RIGHT (CONVERT (VARCHAR (8), SYSDATETIME (), 2), 5) AS [MM.DD] 06.08
DD.MM SELECT CONVERT (VARCHAR (5), SYSDATETIME (), 4) AS [JJ.MM] 08.06
MMJJAAAA SELECT REPLACE (CONVERT (VARCHAR (10), SYSDATETIME (), 101), '/', '') AS [MMJJAAAA] 06082011
MMJJAA SELECT REPLACE (CONVERT (VARCHAR (8), SYSDATETIME (), 1), '/', '') AS [MMJJAA] 060811
JJMMAAAA SELECT REPLACE (CONVERT (VARCHAR (10), SYSDATETIME (), 103), '/', '') AS [JJMMAAAA] 08062011
DDMMYY SELECT REPLACE (CONVERT (VARCHAR (8), SYSDATETIME (), 3), '/', '') AS [JJMMAA] 080611
MMYYYY SÉLECTIONNER DROITE (REMPLACER (CONVERTIR (VARCHAR (10), SYSDATETIME (), 103), '/', ''), 6) AS [MMYYYY] 062011
MMYY SELECT RIGHT (REPLACE (CONVERT (VARCHAR (8), SYSDATETIME (), 3), '/', ''), 4) AS [MMYY] 0611
YYYYMM SELECT CONVERT (VARCHAR (6), SYSDATETIME (), 112) COMME [AAAAMM] 201106
YMM SELECT CONVERT (VARCHAR (4), SYSDATETIME (), 12) AS [YYMM] 1106
Mois JJ, AAAA SELECT DATENAME (MONTH, SYSDATETIME ()) + '' + RIGHT ('0' + DATENAME (DAY, SYSDATETIME ()), 2) + ',' + DATENAME (YEAR, SYSDATETIME ()) AS [Mois JJ, AAAA] 08 juin 2011
Mon AAAA SELECT LEFT (DATENAME (MOIS, SYSDATETIME ()), 3) + '' + DATENAME (YEAR, SYSDATETIME ()) AS [lundi AAAA] Juin 2011
Mois AAAA SELECT DATENAME (MONTH, SYSDATETIME ()) + '' + DATENAME (YEAR, SYSDATETIME ()) AS [Mois AAAA] Juin 2011
DD Mois SELECT RIGHT ('0' + DATENAME (DAY, SYSDATETIME ()), 2) + '' + DATENAME (MONTH, SYSDATETIME ()) AS [JJ Mois] 08 juin
Mois DD SELECT DATENAME (MONTH, SYSDATETIME ()) + '' + RIGHT ('0' + DATENAME (DAY, SYSDATETIME ()), 2) AS [Mois JJ] 08 juin
JJ Mois AA SELECT CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '' + DATENAME (MM, SYSDATETIME ()) + '' + RIGHT (CAST (AN (SYSDATETIME ()) AS VARCHAR (4)), 2) AS [JJ Mois AA] 08 juin 11
JJ Mois AAAA SELECT RIGHT ('0' + DATENAME (DAY, SYSDATETIME ()), 2) + '' + DATENAME (MOIS, SYSDATETIME ()) + '' + DATENAME (YEAR, SYSDATETIME ()) AS [JJ Mois AAAA] 08 juin 2011
Mon YY SELECT REPLACE (RIGHT (CONVERT (VARCHAR (9), SYSDATETIME (), 6), 6), '', '-') AS [Mon-YY] Juin-08
Mon-AAAA SELECT REPLACE (RIGHT (CONVERT (VARCHAR (11), SYSDATETIME (), 106), 8), '', '-') AS [Mon-AAAA] Juin-2011
JJ-Mon-AA SELECT REPLACE (CONVERT (VARCHAR (9), SYSDATETIME (), 6), '', '-') AS [JJ-Mon-AA] 08-juin-11
JJ-Mon-AAAA SELECT REPLACE (CONVERT (VARCHAR (11), SYSDATETIME (), 106), '', '-') AS [JJ-Mon-AAAA] 08-juin-2011


Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow