Delen via


Conceptueel model Canonical to SQL Server Functions Mapping

In dit onderwerp wordt beschreven hoe conceptuele model canonieke functies worden toegewezen aan de bijbehorende SQL Server-functies.

Datum- en tijdfuncties

In de volgende tabel worden de toewijzing van datum- en tijdfuncties beschreven:

Canonieke functies SQL Server-functies
AddDays(expressie) DATEADD(day, number, date)
AddHours(expressie) DATEADD(hour, number, date)
AddMicroseconds(expression) DATEADD(microsecond, number, date)
AddMilliseconds(expression) DATEADD(millisecond, number, date)
AddMinutes(expressie) DATEADD(minute, number, date)
AddMonths(expressie) DATEADD(month, number, date)
AddNanoseconds(expression) DATEADD(nanosecond, number, date)
AddSeconds(expression) DATEADD(second, number, date)
AddYears(expression) DATEADD(year, number, date)
CreateDateTime(year, month, day, hour, minute, second) Voor SQL Server 2000 en SQL Server 2005 wordt een datetime opgemaakte waarde gemaakt op de server. Voor SQL Server 2008 en latere versies wordt een datetime2 waarde gemaakt op de server.
CreateDateTimeOffset(year, month, day, hour, minute, second, tzoffset) Er wordt een datetimeoffset opgemaakte waarde gemaakt op de server.

Niet ondersteund in SQL Server 2000 of SQL Server 2005.
CreateTime(hour, minute, second) Er wordt een time opgemaakte waarde gemaakt op de server.

Niet ondersteund in SQL Server 2000 of SQL Server 2005.
CurrentDateTime() SysDateTime() in SQLServer 2008.

GetDate() in SQLServer 2000 en SQLServer 2005.
CurrentDateTimeOffset() SysDateTimeOffset() in SQL Server 2008.

Niet ondersteund in SQL Server 2000 of SQL Server 2005.
CurrentUtcDateTime() SysUtcDateTime() in SQLServer 2008. GetUtcDate() in SQL Server 2000 en SQL Server 2005.
DayOfYear(expressie) DatePart(dayofyear, expression)
Day(expression) DatePart(day, expression)
DiffDays(startExpression, endExpression) DATEDIFF(day, startdate, enddate)
DiffHours(startExpression, endExpression) DATEDIFF(hour, startdate, enddate)
DiffMicroseconds(startExpression, endExpression) DATEDIFF(microsecond, startdate, enddate)
DiffMilliseconden(startExpression, endExpression) DATEDIFF(millisecond, startdate, enddate)
DiffMinutes(startExpression, endExpression) DATEDIFF(minute, startdate, enddate)
DiffNanoseconds(startExpression, endExpression) DATEDIFF(nanosecond, startdate, enddate)
DiffSeconds(startExpression, endExpression) DATEDIFF(second, startdate, enddate)
DiffYears(startExpression, endExpression) DATEDIFF(year, startdate, enddate)
GetTotalOffsetMinutes(DateTimeOffset) DatePart(tzoffset, expression)
Hour(expression) DatePart(hour, expression)
Milliseconden(expressie) DatePart(millisecond, expression)
Minute(expressie) DatePart(minute, expression)
Month(expressie) DatePart(month, expression)
Second(expressie) DatePart(second, expression)
Truncate(expression) Voor SQL Server 2000 en SQL Server 2005 wordt een afgekapte datetime waarde gemaakt op de server. Voor SQL Server 2008 en latere versies wordt een afgekapte datetime2 waarde gemaakt datetimeoffset op de server.
Year(expressie) DatePart(YEAR, expression)

Statische functies

In de volgende tabel wordt de toewijzing van statistische functies beschreven:

Canonieke functies SQL Server-functies
Avg(expressie) AVG(expression)
BigCount(expressie) BIGCOUNT(expression)
Count(expression) COUNT(expression)
Min(expressie) MIN(expression)
Max(expressie) MAX(expression)
StDev(expressie) STDEV(expression)
StDevP(expressie) STDEVP(expression)
Sum(expressie) SUM(expression)
Var(expressie) VAR(expression)
VarP(expressie) VARP(expression)

Wiskundige functies

In de volgende tabel worden de toewijzing van wiskundige functies beschreven:

Canonieke functies SQL Server-functies
Abs(waarde) ABS(value)
Plafond(waarde) CEILING(value)
Floor(value) FLOOR(value)
Power(value) POWER(value, exponent)
Afronden(waarde) ROUND(value, digits, 0)
Afkappen ROUND(value , digits, 1)

Tekenreeksfuncties

In de volgende tabel wordt de toewijzing van tekenreeksfuncties beschreven:

Canonieke functies SQL Server-functies
Contains(tekenreeks, doel) CHARINDEX(target, string)
Concat(tekenreeks1, tekenreeks2) tekenreeks1 + tekenreeks2
EndsWith(tekenreeks, doel) CHARINDEX(REVERSE(target), REVERSE(string)) = 1

Opmerking De CHARINDEX functie retourneert false als de string functie is opgeslagen in een kolom met een vaste lengtetekenreeks en target een constante is. In dit geval wordt de hele tekenreeks doorzocht, inclusief eventuele opvullingsspaties. Een mogelijke tijdelijke oplossing is om de gegevens in de tekenreeks met vaste lengte te knippen voordat de tekenreeks aan de EndsWith functie wordt doorgegeven, zoals in het volgende voorbeeld: EndsWith(TRIM(string), target)
IndexOf(doel, tekenreeks2) CHARINDEX(target, string2)
Links (tekenreeks1, lengte) LEFT(string1, length)
Lengte (tekenreeks) LEN(string)
LTrim(tekenreeks) LTRIM(string)
Rechts (tekenreeks1, lengte) RIGHT (string1, length)
Trim(tekenreeks) LTRIM(RTRIM(string))
Vervangen (tekenreeks1, tekenreeks2, tekenreeks3) REPLACE(string1, string2, string3)
Omgekeerd (tekenreeks) REVERSE (string)
RTrim(tekenreeks) RTRIM(string)
StartsWith(tekenreeks, doel) CHARINDEX(target, string)
Subtekenreeks(tekenreeks, begin, lengte) SUBSTRING(string, start, length)
ToLower(tekenreeks) LOWER(string)
ToUpper(tekenreeks) UPPER(string)

Bitsgewijze functies

In de volgende tabel wordt de toewijzing van bitsgewijze functies beschreven:

Canonieke functies SQL Server-functies
BitWiseAnd (waarde1, waarde2) waarde1 & waarde2
BitWiseNot (waarde) ~Waarde
BitWiseOr (waarde1, waarde2) waarde1 | waarde2
BitWiseXor (waarde1, waarde2) waarde1 ^ waarde2