Microsoft SQL Server
Date
Ricerca…
Sintassi
- EOMONTH ( start_date [, month_to_add])
Osservazioni
come per https://msdn.microsoft.com/en-us/library/ms187819.aspx , DateTime
s sono solo precisi a 3 ms.
Arrotondamento dei valori datetime Fractional Second Precision datetime sono arrotondati a incrementi di .000, .003 o .007 secondi, come mostrato nella seguente tabella.
Valore specificato dall'utente | Sistema memorizzato |
---|---|
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 | |
------ | ------ |
Se è richiesta maggiore precisione, è necessario utilizzare time
, datetime2
o datetimeoffset
.
Formattazione di data e ora tramite CONVERT
È possibile utilizzare la funzione CONVERT per eseguire il cast di un datatype datetime su una stringa formattata.
SELECT GETDATE() AS [Result] -- 2016-07-21 07:56:10.927
È inoltre possibile utilizzare alcuni codici incorporati per convertire in un formato specifico. Ecco le opzioni integrate in SQL Server:
DECLARE @convert_code INT = 100 -- See Table Below SELECT CONVERT(VARCHAR(30), GETDATE(), @convert_code) AS [Result]
@convert_code | Risultato |
---|---|
100 | "21 lug 2016 7:56 AM" |
101 | "2016/07/21" |
102 | "2016/07/21" |
103 | "21/07/2016" |
104 | "2016/07/21" |
105 | "21-07-2016" |
106 | "21 lug 2016" |
107 | "21 lug 2016" |
108 | "07:57:05" |
109 | "21 luglio 2016 7: 57: 45: 707AM" |
110 | "2016/07/21" |
111 | "2016/07/21" |
112 | "20160721" |
113 | "21 luglio 2016 07: 57: 59: 553" |
114 | "07: 57: 59: 553" |
120 | "21-07-2017 07:57:59" |
121 | "07-07-2017 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
Formattazione di data e ora tramite FORMAT
È possibile utilizzare la nuova funzione: FORMAT()
.
Usando questo puoi trasformare i tuoi campi DATETIME
nel tuo formato VARCHAR
personalizzato.
Esempio
DECLARE @Date DATETIME = '2016-09-05 00:01:02.333'
SELECT FORMAT(@Date, N'dddd, MMMM dd, yyyy hh:mm:ss tt')
Lunedì 5 settembre 2016 12:01:02
argomenti
Dato che DATETIME
stato formattato nel 2016-09-05 00:01:02.333
, il seguente grafico mostra quale sarebbe il loro output per l'argomento fornito.
Discussione | Produzione |
---|---|
aaaa | 2016 |
aa | 16 |
MMMM | settembre |
MM | 09 |
M | 9 |
dddd | Lunedi |
ddd | Mon |
dd | 05 |
d | 5 |
HH | 00 |
H | 0 |
hh | 12 |
h | 12 |
mm | 01 |
m | 1 |
ss | 02 |
S | 2 |
TT | AM |
t | UN |
F F F | 333 |
ff | 33 |
f | 3 |
È anche possibile fornire un singolo argomento alla funzione FORMAT()
per generare un output preformattato:
DECLARE @Date DATETIME = '2016-09-05 00:01:02.333'
SELECT FORMAT(@Date, N'U')
Lunedì 5 settembre 2016 04:01:02
Argomento singolo | Produzione |
---|---|
D | Lunedì 5 settembre 2016 |
d | 2016/09/05 |
F | Lunedì 5 settembre 2016 12:01:02 |
f | Lunedì 5 settembre 2016 alle 12:01 |
sol | 9/5/2016 12:01:02 AM |
g | 9/5/2016 alle 12:01 |
M | 5 settembre |
O | 2016-09-05T00: 01: 02,3330000 |
R | Lun, 05 Set 2016 00:01:02 GMT |
S | 2016-09-05T00: 01: 02 |
T | 12:01:02 AM |
t | Alle 12:01 |
U | Lunedì 5 settembre 2016 04:01:02 |
u | 2016-09-05 00: 01: 02Z |
Y | Settembre 2016 |
Nota: l'elenco precedente utilizza la cultura en-US
. Una diversa cultura può essere specificata per il FORMAT()
tramite il terzo parametro:
DECLARE @Date DATETIME = '2016-09-05 00:01:02.333'
SELECT FORMAT(@Date, N'U', 'zh-cn')
2016 年 9 月 5 日 4:01:02
Ottieni l'ora corrente
Le funzioni incorporate GETDATE
e GETUTCDATE
restituiscono ciascuna la data e l'ora correnti senza un offset del fuso orario.
Il valore di ritorno di entrambe le funzioni è basato sul sistema operativo del computer su cui è in esecuzione l'istanza di SQL Server.
Il valore restituito di GETDATE rappresenta l'ora corrente nello stesso fuso orario del sistema operativo. Il valore di ritorno di GETUTCDATE rappresenta l'ora UTC corrente.
Entrambe le funzioni possono essere incluse nella clausola SELECT
di una query o come parte dell'espressione booleana nella clausola WHERE
.
Esempi:
-- 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()
Ci sono alcune altre funzioni incorporate che restituiscono diverse variazioni della data-ora corrente:
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 per l'aggiunta e la sottrazione dei periodi di tempo
Sintassi generale:
DATEADD (datepart , number , datetime_expr)
Per aggiungere una misura temporale, il number
deve essere positivo. Per sottrarre una misura del tempo, il number
deve essere negativo.
Esempi
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
NOTA: DATEADD
accetta anche le abbreviazioni nel parametro datepart
. L'uso di queste abbreviazioni è generalmente scoraggiato in quanto possono essere fonte di confusione ( m
vs mi
, ww
vs w
, ecc.).
Data di riferimento delle parti
Questi sono i valori di datepart
disponibili per le funzioni di data e ora:
datepart | Abbreviazioni |
---|---|
anno | yy, yyyy |
trimestre | qq, q |
mese | mm, m |
dayofyear | dy, y |
giorno | dd, d |
settimana | wk, ww |
giorno feriale | dw, w |
ora | hh |
minuto | mi, n |
secondo | ss, s |
millisecondo | Signorina |
microsecondo | mcs |
nanosecondo | ns |
NOTA : l'uso delle abbreviazioni è generalmente scoraggiato in quanto possono essere fonte di confusione ( m
vs mi
, ww
vs w
, ecc.). La versione lunga della rappresentazione di datepart
promuove la chiarezza e la leggibilità e dovrebbe essere utilizzata ogni qualvolta possibile ( month
, minute
, week
, weekday
, ecc.).
DATEDIFF per il calcolo delle differenze di periodo
Sintassi generale:
DATEDIFF (datepart, datetime_expr1, datetime_expr2)
Restituirà un numero positivo se datetime_expr
è nel passato relativo a datetime_expr2
e un numero negativo in caso contrario.
Esempi
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
NOTA: DATEDIFF
accetta anche le abbreviazioni nel parametro datepart
. L'uso di queste abbreviazioni è generalmente scoraggiato in quanto possono essere fonte di confusione ( m
vs mi
, ww
vs w
, ecc.).
DATEDIFF
può anche essere utilizzato per determinare l'offset tra UTC e l'ora locale di SQL Server. La seguente istruzione può essere utilizzata per calcolare l'offset tra UTC e l'ora locale (incluso il fuso orario).
select DATEDIFF(hh, getutcdate(), getdate()) as 'CentralTimeOffset'
DATEPART & DATENAME
DATEPART
restituisce la datepart
specificata dell'espressione datetime specificata come valore numerico.
DATENAME
restituisce una stringa di caratteri che rappresenta la datepart
specificata della data specificata. In pratica, DATENAME
è utile soprattutto per ottenere il nome del mese o il giorno della settimana.
Esistono anche alcune funzioni abbreviate per ottenere l'anno, il mese o il giorno di un'espressione datetime, che si comportano come DATEPART
con le rispettive unità di datepart
.
Sintassi:
DATEPART ( datepart , datetime_expr )
DATENAME ( datepart , datetime_expr )
DAY ( datetime_expr )
MONTH ( datetime_expr )
YEAR ( datetime_expr )
Esempi:
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
NOTA: DATEPART
e DATENAME
accettano anche le abbreviazioni nel parametro datepart
. L'uso di queste abbreviazioni è generalmente scoraggiato in quanto possono essere fonte di confusione ( m
vs mi
, ww
vs w
, ecc.).
Ottenere l'ultimo giorno di un mese
Utilizzando le funzioni DATEADD
e DATEDIFF
, è possibile restituire l'ultima data del mese.
SELECT DATEADD(d, -1, DATEADD(m, DATEDIFF(m, 0, '2016-09-23') + 1, 0))
-- 2016-09-30 00:00:00.000
La funzione EOMONTH
fornisce un modo più conciso per restituire l'ultima data di un mese e ha un parametro facoltativo per compensare il mese.
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
Restituisce solo la data da un DateTime
Esistono molti modi per restituire una data da un oggetto DateTime
-
SELECT CONVERT(Date, GETDATE())
-
SELECT DATEADD(dd, 0, DATEDIFF(dd, 0, GETDATE()))
restituisce 2016-07-21 00: 00: 00.000 -
SELECT CAST(GETDATE() AS DATE)
-
SELECT CONVERT(CHAR(10),GETDATE(),111)
-
SELECT FORMAT(GETDATE(), 'yyyy-MM-dd')
Nota che le opzioni 4 e 5 restituiscono una stringa, non una data.
Crea una funzione per calcolare l'età di una persona in una data specifica
Questa funzione richiede 2 parametri datetime, il DOB e una data per verificare l'età in
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
ad esempio per verificare l'età di oggi di qualcuno nato il 1 ° gennaio 2000
SELECT dbo.Calc_Age('2000-01-01',Getdate())
OGGETTO DELLA DATA DELLA PIATTAFORMA CROSS
In Transact SQL, è possibile definire un oggetto come Date
(o DateTime
) utilizzando la funzione [DATEFROMPARTS][1]
(o [DATETIMEFROMPARTS][1]
) come segue:
DECLARE @myDate DATE=DATEFROMPARTS(1988,11,28)
DECLARE @someMoment DATETIME=DATEFROMPARTS(1988,11,28,10,30,50,123)
I parametri forniti sono Anno, Mese, Giorno per la funzione DATEFROMPARTS
e, per la funzione DATETIMEFROMPARTS
, è necessario fornire anno, mese, giorno, ora, minuti, secondi e millisecondi.
Questi metodi sono utili e meritano di essere utilizzati perché l'utilizzo della stringa semplice per creare una data (o datetime) potrebbe non riuscire a seconda delle impostazioni della regione, del percorso o della data della macchina host.
Formato data esteso
Formato data | Dichiarazione SQL | Uscita di esempio |
---|---|---|
AA-MM-DD | SELEZIONA DESTRA (CONVERT (VARCHAR (10), SYSDATETIME (), 20), 8) AS [YY-MM-DD] SELEZIONA REPLACE (CONVERT (VARCHAR (8), SYSDATETIME (), 11), '/', '-') AS [YY-MM-DD] | 11-06-08 |
AAAA-MM-DD | SELECT CONVERT (VARCHAR (10), SYSDATETIME (), 120) AS [YYYY-MM-DD] SELEZIONA REPLACE (CONVERT (VARCHAR (10), SYSDATETIME (), 111), '/', '-') AS [YYYY-MM-DD] | 2011-06-08 |
AAAA-MD | SELECT CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)) + '-' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '-' + CAST (DAY (SYSDATETIME ()) AS VARCHAR ( 2)) AS [YYYY-MD] | 2011/06/08 |
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] | 2011/06/08 |
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 (ANNO (SYSDATETIME ()) AS VARCHAR ( 4)) AS [DM-YYYY] | 2011/08/06 |
DM-YY | SELECT CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '-' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '-' + RIGHT (CAST (ANNO (SYSDATETIME ()) AS VARCHAR (4)), 2) AS [DM-YY] | 8-6-11 |
AA-MM | SELEZIONA DESTRA (CONVERT (VARCHAR (7), SYSDATETIME (), 20), 5) AS [YY-MM] SELEZIONARE SUBSTRING (CONVERT (VARCHAR (10), SYSDATETIME (), 120), 3, 5) AS [YY-MM] | 11-06 |
AAAA-MM | SELEZIONA CONVERT (VARCHAR (7), SYSDATETIME (), 120) AS [YYYY-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-AA | SELEZIONA DESTRA (CONVERT (VARCHAR (8), SYSDATETIME (), 5), 5) AS [MM-YY] SELEZIONARE SUBSTRING (CONVERT (VARCHAR (8), SYSDATETIME (), 5), 4, 5) AS [MM-YY] | 06-11 |
MM-AAAA | SELEZIONA DESTRA (CONVERT (VARCHAR (10), SYSDATETIME (), 105), 7) AS [MM-YYYY] | 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-DD | SELEZIONA CONVERT (VARCHAR (5), SYSDATETIME (), 10) AS [MM-DD] | 06-08 |
GG-MM | SELEZIONA CONVERT (VARCHAR (5), SYSDATETIME (), 5) AS [DD-MM] | 08-06 |
MD | SELECT CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '-' + CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) AS [MD] | 6-8 |
DM | SELECT CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '-' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) AS [DM] | 8-6 |
M / D / AAAA | SELECT CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '/' + CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '/' + CAST (ANNO (SYSDATETIME ()) AS VARCHAR ( 4)) AS [M / D / YYYY] | 2011/06/08 |
M / D / 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 |
D / M / AAAA | SELECT CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '/' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '/' + CAST (ANNO (SYSDATETIME ()) AS VARCHAR ( 4)) AS [D / M / YYYY] | 8/6/2011 |
D / M / YY | SELECT CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '/' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '/' + RIGHT (CAST (ANNO (SYSDATETIME ()) AS VARCHAR (4)), 2) AS [D / M / YY] | 8/6/11 |
AAAA / M / D | SELECT CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)) + '/' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '/' + CAST (DAY (SYSDATETIME ()) AS VARCHAR ( 2)) AS [YYYY / M / D] | 2011/06/08 |
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 | SELEZIONA DESTRA (CONVERT (VARCHAR (8), SYSDATETIME (), 3), 5) AS [MM / AA] | 06/11 |
MM / AAAA | SELEZIONA DESTRA (CONVERT (VARCHAR (10), SYSDATETIME (), 103), 7) AS [MM / YYYY] | 06/2011 |
M / AA | 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 | SELEZIONA CONVERT (VARCHAR (5), SYSDATETIME (), 11) AS [YY / MM] | 11/06 |
AAAA / MM | SELEZIONA CONVERT (VARCHAR (7), SYSDATETIME (), 111) AS [YYYY / 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 / DD | SELEZIONA CONVERT (VARCHAR (5), SYSDATETIME (), 1) AS [MM / DD] | 06/08 |
GG / MM | SELEZIONA CONVERT (VARCHAR (5), SYSDATETIME (), 3) AS [DD / MM] | 08/06 |
M / D | 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.GG.AAAA | SELEZIONA REPLACE (CONVERT (VARCHAR (10), SYSDATETIME (), 101), '/', '.') AS [MM.DD.YYYY] | 06.08.2011 |
MM.GG.AA | SELEZIONA 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 (ANNO (SYSDATETIME ()) AS VARCHAR (4)) COME [MDYYYY] | 6.8.2011 |
MDYY | SELECT CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '.' + CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '.' + DESTRA (CAST (ANNO (SYSDATETIME ()) AS VARCHAR (4)), 2) AS [MDYY] | 6.8.11 |
GG.MM.AAAA | SELEZIONA CONVERT (VARCHAR (10), SYSDATETIME (), 104) AS [GG.MM.AAAA] | 08.06.2011 |
GG.MM.AA | SELEZIONA CONVERT (VARCHAR (10), SYSDATETIME (), 4) AS [GG.MM.AA] | 08.06.11 |
DMYYYY | SELECT CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '.' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '.' + CAST (ANNO (SYSDATETIME ()) AS VARCHAR (4)) COME [DMYYYY] | 8.6.2011 |
DMYY | SELECT CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '.' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '.' + DESTRA (CAST (ANNO (SYSDATETIME ()) AS VARCHAR (4)), 2) AS [DMYY] | 8.6.11 |
YYYY.MD | SELECT CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)) + '.' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '.' + CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) AS [YYYY.MD] | 2011/06/08 |
YY.MD | SELEZIONA DESTRA (CAST (ANNO (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 | SELEZIONA DESTRA (CONVERT (VARCHAR (10), SYSDATETIME (), 104), 7) AS [MM.YYYY] | 06.2011 |
MM.YY | SELEZIONA DESTRA (CONVERT (VARCHAR (8), SYSDATETIME (), 4), 5) AS [MM.YY] | 06.11 |
M.YYYY | SELECT CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '.' + CAST (ANNO (SYSDATETIME ()) AS VARCHAR (4)) COME [M.YYYY] | 6,2011 |
M.YY | SELECT CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) + '.' + DESTRA (CAST (ANNO (SYSDATETIME ()) AS VARCHAR (4)), 2) AS [M.YY] | 6.11 |
YYYY.MM | SELEZIONA CONVERT (VARCHAR (7), SYSDATETIME (), 102) AS [YYYY.MM] | 2011.06 |
YY.MM | SELEZIONA CONVERT (VARCHAR (5), SYSDATETIME (), 2) AS [YY.MM] | 11.06 |
YYYY.M | SELECT CAST (YEAR (SYSDATETIME ()) AS VARCHAR (4)) + '.' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) AS [YYYY.M] | 2.011,6 |
YY.M | SELEZIONA DESTRA (CAST (ANNO (SYSDATETIME ()) AS VARCHAR (4)), 2) + '.' + CAST (MONTH (SYSDATETIME ()) AS VARCHAR (2)) AS [YY.M] | 11.6 |
mm.dd | SELEZIONA DESTRA (CONVERT (VARCHAR (8), SYSDATETIME (), 2), 5) AS [MM.DD] | 06.08 |
DD.MM | SELEZIONA CONVERT (VARCHAR (5), SYSDATETIME (), 4) AS [DD.MM] | 08.06 |
MMGGAAAA | SELEZIONA REPLACE (CONVERT (VARCHAR (10), SYSDATETIME (), 101), '/', '') AS [MMDDYYYY] | 06082011 |
MMDDYY | SELEZIONA REPLACE (CONVERT (VARCHAR (8), SYSDATETIME (), 1), '/', '') AS [MMDDYY] | 060.811 |
DDMMYYYY | SELEZIONA SOSTITUISCI (CONVERT (VARCHAR (10), SYSDATETIME (), 103), '/', '') AS [GGMMAAAA] | 08062011 |
GGMMAA | SELEZIONA SOSTITUISCI (CONVERT (VARCHAR (8), SYSDATETIME (), 3), '/', '') AS [DDMMYY] | 080.611 |
MMYYYY | SELEZIONA DESTRA (REPLACE (CONVERT (VARCHAR (10), SYSDATETIME (), 103), '/', ''), 6) AS [MMYYYY] | 062011 |
MMAA | SELEZIONA DESTRA (REPLACE (CONVERT (VARCHAR (8), SYSDATETIME (), 3), '/', ''), 4) AS [MMYY] | 0611 |
AAAAMM | SELEZIONA CONVERT (VARCHAR (6), SYSDATETIME (), 112) AS [YYYYMM] | 201106 |
AAMM | SELEZIONA CONVERT (VARCHAR (4), SYSDATETIME (), 12) AS [YYMM] | 1106 |
Mese GG, AAAA | SELEZIONA DATENAME (MESE, SYSDATETIME ()) + '' + DESTRA ('0' + DATENAME (GIORNO, SYSDATETIME ()), 2) + ',' + DATENAME (ANNO, SYSDATETIME ()) AS [Mese DD, YYYY] | 8 giugno 2011 |
Lun YYYY | SELEZIONA A SINISTRA (DATENAME (MONTH, SYSDATETIME ()), 3) + '' + DATENAME (ANNO, SYSDATETIME ()) AS [Mon YYYY] | Giugno 2011 |
Mese AAAA | SELEZIONA DATENAME (MESE, SYSDATETIME ()) + '' + DATENAME (ANNO, SYSDATETIME ()) AS [Mese YYYY] | Giugno 2011 |
DD Month | SELECT RIGHT ('0' + DATENAME (DAY, SYSDATETIME ()), 2) + '' + DATENAME (MONTH, SYSDATETIME ()) AS [DD Month] | 08 giugno |
Mese DD | SELEZIONA DATENAME (MONTH, SYSDATETIME ()) + '' + RIGHT ('0' + DATENAME (DAY, SYSDATETIME ()), 2) AS [Month DD] | 8 giugno |
DD Mese AA | SELECT CAST (DAY (SYSDATETIME ()) AS VARCHAR (2)) + '' + DATENAME (MM, SYSDATETIME ()) + '' + RIGHT (CAST (ANNO (SYSDATETIME ()) AS VARCHAR (4)), 2) AS [DD Mese YY] | 08 giugno |
DD Mese AAAA | SELECT RIGHT ('0' + DATENAME (DAY, SYSDATETIME ()), 2) + '' + DATENAME (MONTH, SYSDATETIME ()) + '' + DATENAME (ANNO, SYSDATETIME ()) AS [DD Month YYYY] | 08 giugno 2011 |
Mon-YY | SELEZIONA REPLACE (DESTRA (CONVERT (VARCHAR (9), SYSDATETIME (), 6), 6), '', '-') AS [Mon-YY] | Jun-08 |
Mon-AAAA | SELEZIONA SOSTITUISCI (DESTRA (CONVERSO (VARCHAR (11), SYSDATETIME (), 106), 8), '', '-') AS [Mon-YYYY] | Giu-2011 |
DD-Mon-YY | SELEZIONA SOSTITUISCI (CONVERT (VARCHAR (9), SYSDATETIME (), 6), '', '-') AS [DD-Mon-YY] | 08-giu-11 |
DD-Mon-AAAA | SELEZIONA REPLACE (CONVERT (VARCHAR (11), SYSDATETIME (), 106), '', '-') AS [DD-Mon-YYYY] | 08-Giu-2011 |