Asignación entre las funciones canónicas del modelo conceptual y las funciones de SQL Server

En este tema se describe cómo se asignan las funciones canónicas del modelo conceptual a las funciones de SQL Server correspondientes.

Funciones de fecha y hora

En la tabla siguiente se describe la asignación de las funciones de fecha y hora:

Funciones canónicas Funciones de SQL Server

AddDays(expresión)

DATEADD(day, number, date)

AddHours(expresión)

DATEADD(hour, number, date)

AddMicroseconds(expresión)

DATEADD(microsecond, number, date)

AddMilliseconds(expresión)

DATEADD(millisecond, number, date)

AddMinutes(expresión)

DATEADD(minute, number, date)

AddMonths(expresión)

DATEADD(month, number, date)

AddNanoseconds(expresión)

DATEADD(nanosecond, number, date)

AddSeconds(expresión)

DATEADD(second, number, date)

AddYears(expresión)

DATEADD(year, number, date)

CreateDateTime(año, mes, día, hora, minuto, segundo)

En SQL Server 2000 y SQL Server 2005, se crea un valor con formato datetime en el servidor. En SQL Server 2008 y versiones posteriores, se crea un valor datetime2 en el servidor.

CreateDateTimeOffset(año, mes, día, hora, minuto, segundo, tzoffset)

Se crea un valor con formato datetimeoffset en el servidor.

No se admite en SQL Server 2000 ni en SQL Server 2005.

CreateTime(hora, minuto, segundo)

Se crea un valor con formato time en el servidor.

No se admite en SQL Server 2000 ni en SQL Server 2005.

CurrentDateTime()

SysDateTime() en SQL Server 2008.

GetDate() en SQL Server 2000 y SQL Server 2005.

CurrentDateTimeOffset()

SysDateTimeOffset() en SQL Server 2008.

No se admite en SQL Server 2000 ni en SQL Server 2005.

CurrentUtcDateTime()

SysUtcDateTime() en SQL Server 2008. GetUtcDate() en SQL Server 2000 y SQL Server 2005.

DayOfYear(expresión)

DatePart(dayofyear, expression)

Day(expresión)

DatePart(day, expression)

DiffDays(expresión_inicial, expresión_final)

DATEDIFF(day, startdate, enddate)

DiffHours(expresión_inicial, expresión_final)

DATEDIFF(hour, startdate, enddate)

DiffMicroseconds(expresión_inicial, expresión_final)

DATEDIFF(microsecond, startdate, enddate)

DiffMilliseconds(expresión_inicial, expresión_final)

DATEDIFF(millisecond, startdate, enddate)

DiffMinutes(expresión_inicial, expresión_final)

DATEDIFF(minute, startdate, enddate)

DiffNanoseconds(expresión_inicial, expresión_final)

DATEDIFF(nanosecond, startdate, enddate)

DiffSeconds(expresión_inicial, expresión_final)

DATEDIFF(second, startdate, enddate)

DiffYears(expresión_inicial, expresión_final)

DATEDIFF(year, startdate, enddate)

GetTotalOffsetMinutes(DateTimeOffset)

DatePart(tzoffset, expression)

Hora(expresión)

DatePart(hour, expression)

Millisecond(expresión)

DatePart(millisecond, expression)

Minute(expresión)

DatePart(minute, expression)

Month(expresión)

DatePart(month, expression)

Second(expresión)

DatePart(second, expression)

Truncate(expresión)

En SQL Server 2000 y SQL Server 2005, se crea un valor con formato datetime truncado en el servidor. En SQL Server 2008 y versiones posteriores, se crea un valor datetime2 o datetimeoffset truncado en el servidor.

Year(expresión)

DatePart(YEAR, expression)

Funciones de agregado

En la tabla siguiente se describe la asignación de las funciones de agregado:

Funciones canónicas Funciones de SQL Server

Avg(expresión)

AVG(expression)

BigCount(expresión)

BIGCOUNT(expression)

Count(expresión)

COUNT(expression)

Min(expresión)

MIN(expression)

Max(expresión)

MAX(expression)

StDev(expresión)

STDEV(expression)

StDevP(expresión)

STDEVP(expression)

Sum(expresión)

SUM(expression)

Var(expresión)

VAR(expression)

VarP(expresión)

VARP(expression)

Funciones matemáticas

En la tabla siguiente se describe la asignación de las funciones matemáticas:

Funciones canónicas Funciones de SQL Server

Abs(valor)

ABS(value)

Ceiling(valor)

CEILING(value)

Floor(valor)

FLOOR(value)

Power(valor)

POWER(value, exponent)

Round(valor)

ROUND(value, digits, 0)

Truncate

ROUND(value , digits, 1)

Funciones de cadena

En la tabla siguiente se describe la asignación de las funciones de cadena:

Funciones canónicas Funciones de SQL Server

Contains(cadena, destino)

CHARINDEX(target, string)

Concat(cadena1, cadena2)

cadena1 + cadena2

EndsWith(cadena, destino)

CHARINDEX(REVERSE(target), REVERSE(string)) = 1

Nota   La función CHARINDEX devuelve false si el parámetro string está almacenado en una columna de cadena de longitud fija y target es una constante. En este caso, se buscará en toda la cadena, incluyendo los espacios finales de relleno que pueda haber. Una posible solución alternativa es recortar los datos de la cadena de longitud fija antes de pasar esta a la función EndsWith, como en el ejemplo siguiente: EndsWith(TRIM(string), target)

IndexOf(destino, cadena2)

CHARINDEX(target, string2)

Left (cadena1, longitud)

LEFT(string1, length)

Length (cadena)

LEN(string)

LTrim(cadena)

LTRIM(string)

Right (cadena1, longitud)

RIGHT (string1, length)

Trim(cadena)

LTRIM(RTRIM(string))

Replace (cadena1, cadena2, cadena3)

REPLACE(string1, string2, string3)

Reverse (cadena)

REVERSE (string)

RTrim(cadena)

RTRIM(string)

StartsWith(cadena, destino)

CHARINDEX(target, string)

Substring(cadena, inicio, longitud)

SUBSTRING(string, start, length)

ToLower(cadena)

LOWER(string)

ToUpper(cadena)

UPPER(string)

Funciones bit a bit

En la tabla siguiente se describe la asignación de las funciones bit a bit:

Funciones canónicas Funciones de SQL Server

BitWiseAnd (valor1, valor2)

valor1 & valor2

BitWiseNot (valor)

~valor

BitWiseOr (valor1, valor2)

valor1 | valor2

BitWiseXor (valor1, valor2)

valor1 ^ valor2