Mapping delle funzioni canoniche del modello concettuale alle funzioni SQL Server
In questo argomento viene descritto il mapping delle funzioni canoniche del modello concettuale alle corrispondenti funzioni SQL Server.
Funzioni di data e ora
Nella tabella seguente viene descritto il mapping delle funzioni di data e ora:
Funzioni canoniche | Funzioni SQL Server |
---|---|
DATEADD(day, number, date) |
|
DATEADD(hour, number, date) |
|
DATEADD(microsecond, number, date) |
|
DATEADD(millisecond, number, date) |
|
DATEADD(minute, number, date) |
|
DATEADD(month, number, date) |
|
DATEADD(nanosecond, number, date) |
|
DATEADD(second, number, date) |
|
DATEADD(year, number, date) |
|
Per SQL Server 2000 e SQL Server 2005, un valore formattato in datetime viene creato nel server. Per SQL Server 2008 e versioni successive, un valore datetime2 viene creato nel server. |
|
CreateDateTimeOffset(year, month, day, hour, minute, second, tzoffset) |
Un valore formattato in datetimeoffset viene creato nel server. Non supportata in SQL Server 2000 o SQL Server 2005. |
Un valore formattato in time viene creato nel server. Non supportata in SQL Server 2000 o SQL Server 2005. |
|
SysDateTime() in SQLServer 2008. GetDate() in SQLServer 2000 e in SQLServer 2005. |
|
SysDateTimeOffset() in SQL Server 2008. Non supportata in SQL Server 2000 o SQL Server 2005. |
|
SysUtcDateTime() in SQLServer 2008. GetUtcDate() in SQL Server 2000 e in SQL Server 2005. |
|
DatePart(dayofyear, expression) |
|
DatePart(day, expression) |
|
DATEDIFF(day, startdate, enddate) |
|
DATEDIFF(hour, startdate, enddate) |
|
DATEDIFF(microsecond, startdate, enddate) |
|
DATEDIFF(millisecond, startdate, enddate) |
|
DATEDIFF(minute, startdate, enddate) |
|
DATEDIFF(nanosecond, startdate, enddate) |
|
DATEDIFF(second, startdate, enddate) |
|
DATEDIFF(year, startdate, enddate) |
|
DatePart(tzoffset, expression) |
|
DatePart(hour, expression) |
|
DatePart(millisecond, expression) |
|
DatePart(minute, expression) |
|
DatePart(month, expression) |
|
DatePart(second, expression) |
|
Per SQL Server 2000 e SQL Server 2005, un valore formattato in datetime troncato viene creato nel server. Per SQL Server 2008 e versioni successive, un valore datetime2 o datetimeoffset troncato viene creato nel server. |
|
DatePart(YEAR, expression) |
Funzioni di aggregazione
Nella tabella seguente viene descritto il mapping delle funzioni di aggregazione:
Funzioni canoniche | Funzioni SQL Server |
---|---|
AVG(expression) |
|
BIGCOUNT(expression) |
|
COUNT(expression) |
|
MIN(expression) |
|
MAX(expression) |
|
STDEV(expression) |
|
STDEVP(expression) |
|
SUM(expression) |
|
VAR(expression) |
|
VARP(expression) |
Funzioni matematiche
Nella tabella seguente viene descritto il mapping delle funzioni matematiche:
Funzioni canoniche | Funzioni SQL Server |
---|---|
ABS(value) |
|
CEILING(value) |
|
FLOOR(value) |
|
POWER(value, exponent) |
|
ROUND(value, digits, 0) |
|
ROUND(value , digits, 1) |
Funzioni di stringa
Nella tabella seguente viene descritto il mapping delle funzioni di stringa:
Funzioni canoniche | Funzioni SQL Server |
---|---|
CHARINDEX(target, string) |
|
string1 + string2 |
|
CHARINDEX(REVERSE(target), REVERSE(string)) = 1 Nota La funzione CHARINDEX restituisce il valore false se il parametro string è archiviato in una colonna di stringhe a lunghezza fissa e target è una costante. In questo caso, la ricerca viene eseguita nell'intera stringa, inclusa la spaziatura interna finale. Una possibile soluzione alternativa consiste nel tagliare i dati nella stringa a lunghezza fissa prima di passare la stringa alla funzione |
|
CHARINDEX(target, string2) |
|
LEFT(string1, length) |
|
LEN(string) |
|
LTRIM(string) |
|
RIGHT (string1, length) |
|
LTRIM(RTRIM(string)) |
|
REPLACE(string1, string2, string3) |
|
REVERSE (string) |
|
RTRIM(string) |
|
CHARINDEX(target, string) |
|
SUBSTRING(string, start, length) |
|
LOWER(string) |
|
UPPER(string) |
Funzioni bit per bit
Nella tabella seguente viene descritto il mapping delle funzioni bit per bit:
Funzioni canoniche | Funzioni SQL Server |
---|---|
value1 & value2 |
|
~value |
|
value1 | value2 |
|
value1 ^ value2 |