Megosztás a következőn keresztül:


Elméleti modell kanonikus és SQL Server-függvények leképezése

Ez a témakör azt ismerteti, hogy a modell kanonikus függvényei hogyan képezhetők le a megfelelő SQL Server-függvényekhez.

Dátum és időpont függvényei

Az alábbi táblázat a dátum- és időfüggvények leképezését ismerteti:

Canonical functions SQL Server-függvények
AddDays(kifejezés) DATEADD(day, number, date)
AddHours(kifejezés) DATEADD(hour, number, date)
AddMicroseconds(kifejezés) DATEADD(microsecond, number, date)
AddMilliseconds(kifejezés) DATEADD(millisecond, number, date)
AddMinutes(kifejezés) DATEADD(minute, number, date)
AddMonths(kifejezés) DATEADD(month, number, date)
AddNanoseconds(kifejezés) DATEADD(nanosecond, number, date)
AddSeconds(kifejezés) DATEADD(second, number, date)
AddYears(kifejezés) DATEADD(year, number, date)
CreateDateTime(év, hónap, nap, óra, perc, másodperc) Az SQL Server 2000 és az SQL Server 2005 datetime esetén formázott érték jön létre a kiszolgálón. Az SQL Server 2008- és újabb verzióihoz létrejön egy datetime2 érték a kiszolgálón.
CreateDateTimeOffset(év, hónap, nap, óra, perc, második, tzoffset) A datetimeoffset rendszer formázott értéket hoz létre a kiszolgálón.

Az SQL Server 2000 vagy az SQL Server 2005 nem támogatott.
CreateTime(óra, perc, másodperc) A time rendszer formázott értéket hoz létre a kiszolgálón.

Az SQL Server 2000 vagy az SQL Server 2005 nem támogatott.
CurrentDateTime() SysDateTime() az SQLServer 2008-ban.

GetDate() az SQLServer 2000-ben és az SQLServer 2005-ben.
CurrentDateTimeOffset() SysDateTimeOffset() az SQL Server 2008-ban.

Az SQL Server 2000 vagy az SQL Server 2005 nem támogatott.
CurrentUtcDateTime() SysUtcDateTime() az SQLServer 2008-ban. GetUtcDate() az SQL Server 2000-ben és az SQL Server 2005-ben.
DayOfYear(kifejezés) DatePart(dayofyear, expression)
Day(kifejezés) DatePart(day, expression)
DiffDays(startExpression, endExpression) DATEDIFF(day, startdate, enddate)
DiffHours(startExpression, endExpression) DATEDIFF(hour, startdate, enddate)
DiffMicroseconds(startExpression, endExpression) DATEDIFF(microsecond, startdate, enddate)
DiffMilliseconds(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(kifejezés) DatePart(hour, expression)
Ezredmásodperc(kifejezés) DatePart(millisecond, expression)
Minute(kifejezés) DatePart(minute, expression)
Month(kifejezés) DatePart(month, expression)
Second(kifejezés) DatePart(second, expression)
Truncate(kifejezés) Az SQL Server 2000 és az SQL Server 2005 esetén a rendszer csonkolt datetime formázott értéket hoz létre a kiszolgálón. Az SQL Server 2008 és újabb verziói esetében csonkolt datetime2 vagy datetimeoffset érték jön létre a kiszolgálón.
Year(kifejezés) DatePart(YEAR, expression)

Aggregátumfüggvények

Az alábbi táblázat az összesítő függvények leképezését ismerteti:

Canonical functions SQL Server-függvények
Avg(kifejezés) AVG(expression)
BigCount(kifejezés) BIGCOUNT(expression)
Darabszám(kifejezés) COUNT(expression)
Min(kifejezés) MIN(expression)
Max(kifejezés) MAX(expression)
StDev(kifejezés) STDEV(expression)
StDevP(kifejezés) STDEVP(expression)
Sum(kifejezés) SUM(expression)
Var(kifejezés) VAR(expression)
VarP(kifejezés) VARP(expression)

Matematikai függvények

Az alábbi táblázat a matematikai függvények leképezését ismerteti:

Canonical functions SQL Server-függvények
Abs(érték) ABS(value)
Mennyezet(érték) CEILING(value)
Padló(érték) FLOOR(value)
Power(érték) POWER(value, exponent)
Kerekítés(érték) ROUND(value, digits, 0)
Megcsonkít ROUND(value , digits, 1)

Sztringfüggvények

Az alábbi táblázat a sztringfüggvények leképezését ismerteti:

Canonical functions SQL Server-függvények
Contains(sztring, cél) CHARINDEX(target, string)
Concat(sztring1; sztring2) sztring1 + sztring2
EndsWith(sztring, cél) CHARINDEX(REVERSE(target), REVERSE(string)) = 1

Megjegyzés: A CHARINDEX függvény akkor ad vissza, false ha a string függvény rögzített hosszúságú sztringoszlopban van tárolva, és target állandó. Ebben az esetben a rendszer a teljes sztringet keresi, beleértve a záró szóközöket is. Lehetséges áthidaló megoldás, ha a rögzített hosszúságú sztringben lévő adatokat levágja, mielőtt a sztringet átadta a EndsWith függvénynek, ahogyan az alábbi példában is látható: EndsWith(TRIM(string), target)
IndexOf(cél, sztring2) CHARINDEX(target, string2)
Balra (sztring1, hossz) LEFT(string1, length)
Hossz (sztring) LEN(string)
LTrim(sztring) LTRIM(string)
Jobbra (sztring1, hossz) RIGHT (string1, length)
Vágás(sztring) LTRIM(RTRIM(string))
Csere (sztring1, sztring2, sztring3) REPLACE(string1, string2, string3)
Fordított (sztring) REVERSE (string)
RTrim(sztring) RTRIM(string)
StartsWith(sztring, cél) CHARINDEX(target, string)
Részsztring(sztring, kezdet, hossz) SUBSTRING(string, start, length)
ToLower(sztring) LOWER(string)
ToUpper(sztring) UPPER(string)

Bitenkénti függvények

Az alábbi táblázat a bitenkénti függvények leképezését ismerteti:

Canonical functions SQL Server-függvények
BitWiseAnd (érték1, érték2) érték1 &érték2
BitWiseNot (érték) ~Érték
BitWiseOr (érték1, érték2) érték1 | érték2
BitWiseXor (érték1, érték2) value1 ^ value2