Funzioni di data e ora

Il provider di dati .NET Framework per SQL Server (SqlClient) fornisce funzioni di data e ora che eseguono operazioni in un valore di input System.DateTime e restituiscono un risultato di tipo string, System.DateTime o numerico. Tali funzioni si trovano nello spazio dei nomi SqlServer, disponibile quando si usa SqlClient. Una proprietà dello spazio dei nomi del provider consente a Entity Framework di individuare il prefisso usato dal provider per costrutti specifici, ad esempio tipi e funzioni. Nella tabella seguente sono riportate le funzioni di data e ora di SqlClient.

Funzione Descrizione
DATEADD(datepart, number, date) Restituisce un nuovo valore DateTime, basato sull'aggiunta di un intervallo alla data specificata.

Argomenti

datepart: valore String che rappresenta la parte della data su cui restituire un nuovo valore.

number: valore Int32, Int64, Decimal o Double usato per incrementare datepart.

date: Espressione che restituisce DateTime, DateTimeOffset o Time con precisione = [0-7] o una stringa di caratteri in un formato di data.

Valore restituito

Un nuovo valore DateTime o DateTimeOffset o Time con precisione = [0-7].

Esempio

SqlServer.DATEADD('day', 22, cast('6/9/2006' as DateTime))
DATEDIFF(datepart,startdate,enddate) Restituisce il numero di unità di data e ora trascorse tra due date specificate.

Argomenti

datepart: valore String che rappresenta la parte della data per calcolare la differenza.

startdate: data di inizio per il calcolo è un'espressione che restituisce un valore DateTime o DateTimeOffset o Time con precisione = [0-7] o una stringa di caratteri in un formato di data.

enddate: Una data di fine per il calcolo è un'espressione che restituisce un valore DateTime, DateTimeOffset o Time con precisione = [0-7] o una stringa di caratteri in un formato di data.

Valore restituito

Oggetto Int32.

Esempio

SqlServer.DATEDIFF('day', cast('6/9/2006' as DateTime),

cast('6/20/2006' as DateTime))
DATENAME(datepart, date) Restituisce una stringa di caratteri che rappresenta il valore datepart specificato della data indicata.

Argomenti

datepart: valore String che rappresenta la parte della data su cui restituire un nuovo valore.

date: espressione che restituisce un valore DateTime, o DateTimeOffset o Time con precisione = [0-7] o una stringa di caratteri in un formato di data.

Valore restituito

Stringa di caratteri che rappresenta la parte della data specificata nella data specificata.

Esempio

SqlServer.DATENAME('year', cast('6/9/2006' as DateTime))
DATEPART(datepart, date) Restituisce un integer che rappresenta la parte specificata della data indicata.

Argomenti

datepart: valore String che rappresenta la parte della data su cui restituire un nuovo valore.

date: espressione che restituisce un valore DateTime, o DateTimeOffset, o Time con precisione = [0-7] o una stringa di caratteri in un formato di data.

Valore restituito

La parte della data specificata nella data specificata, come un valore Int32.

Esempio

SqlServer.DATEPART('year', cast('6/9/2006' as DateTime))
DAY(date) Restituisce, come valore intero, il giorno della data specificata.

Argomenti

date: espressione di tipo DateTime o DateTimeOffset con precisione = 0-7.

Valore restituito

Il giorno della data specificata come un valore Int32.

Esempio

SqlServer.DAY(cast('6/9/2006' as DateTime))
GETDATE() Restituisce la data e l'ora correnti nel formato interno di SQL Server per i valori datetime.

Valore restituito

Data e ora di sistema correnti come oggetto DateTime con una precisione di 3.

Esempio

SqlServer.GETDATE()
GETUTCDATE() Restituisce il valore datetime nel formato UTC (Coordinated Universal Time o ora di Greenwich).

Valore restituito

Valore DateTime con una precisione di 3 in formato UTC.

Esempio

SqlServer.GETUTCDATE()
MONTH(date) Restituisce, come valore intero, il mese della data specificata.

Argomenti

date: espressione di tipo DateTime o DateTimeOffset con precisione = 0-7.

Valore restituito

Mese della data specificata come valore Int32.

Esempio

SqlServer.MONTH(cast('6/9/2006' as DateTime))
YEAR(date) Restituisce, come valore intero, l'anno della data specificata.

Argomenti

date: espressione di tipo DateTime o DateTimeOffset con precisione = 0-7.

Valore restituito

Anno della data specificata come valore Int32.

Esempio

SqlServer.YEAR(cast('6/9/2006' as DateTime))
SYSDATETIME() Restituisce un valore DateTime con una precisione di 7.

Valore restituito

Valore DateTime con una precisione di 7.

Esempio

SqlServer.SYSDATETIME()
SYSUTCDATE() Restituisce il valore datetime nel formato UTC (Coordinated Universal Time o ora di Greenwich).

Valore restituito

Valore DateTime con precisione = 7 in formato UTC.

Esempio

SqlServer.SYSUTCDATE()
SYSDATETIMEOFFSET() Restituisce un valore DateTimeOffset con una precisione di 7.

Valore restituito

Valore DateTimeOffset con una precisione di 7 in formato UTC.

Esempio

SqlServer.SYSDATETIMEOFFSET()

Per altre informazioni sulle funzioni di data e ora supportate da SqlClient, vedere Funzioni e tipi di dati di data e ora (Transact-SQL).

Vedi anche