Bagikan melalui


Model Konseptual Kanonik untuk pemetaan fungsi SQL Server

Topik ini menjelaskan bagaimana fungsi kanonik model konseptual memetakan fungsi SQL Server yang sesuai.

Fungsi Tanggal dan Waktu

Tabel berikut menjelaskan pemetaan fungsi tanggal dan waktu:

Fungsi kanonis SQL Server fungsi
AddDays(expression) DATEADD(day, number, date)
AddHours(expression) DATEADD(hour, number, date)
AddMicroseconds(expression) DATEADD(microsecond, number, date)
AddMilliseconds(expression) DATEADD(millisecond, number, date)
AddMinutes(expression) DATEADD(minute, number, date)
AddMonths(expression) DATEADD(month, number, date)
AddNanoseconds(expression) DATEADD(nanosecond, number, date)
AddSeconds(expression) DATEADD(second, number, date)
AddYears(expression) DATEADD(year, number, date)
CreateDateTime(tahun, bulan, hari, jam, menit, detik) Untuk SQL Server 2000 dan SQL Server 2005, nilai yang datetime diformat dibuat di server. Untuk SQL Server 2008 dan versi yang datetime2 lebih baru, nilai dibuat di server.
CreateDateTimeOffset(tahun, bulan, hari, jam, menit, detik, tzoffset) Nilai datetimeoffset yang diformat dibuat di server.

Tidak didukung di SQL Server 2000 atau SQL Server 2005.
CreateTime(jam, menit, detik) Nilai time yang diformat dibuat di server.

Tidak didukung di SQL Server 2000 atau SQL Server 2005.
CurrentDateTime() SysDateTime() di SQLServer 2008.

GetDate() di SQLServer 2000 dan SQLServer 2005.
CurrentDateTimeOffset() SysDateTimeOffset() di SQL Server 2008.

Tidak didukung di SQL Server 2000 atau SQL Server 2005.
CurrentUtcDateTime() SysUtcDateTime() di SQLServer 2008. GetUtcDate() di SQL Server 2000 dan SQL Server 2005.
DayOfYear(expression) 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)
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(expression) DatePart(hour, expression)
Millisecond(expression) DatePart(millisecond, expression)
Minute(expression) DatePart(minute, expression)
Month(expression) DatePart(month, expression)
Second(expression) DatePart(second, expression)
Truncate(expression) Untuk SQL Server 2000 dan SQL Server 2005, nilai datetime yang diformat terpotong dibuat di server. Untuk SQL Server 2008 dan versi yang lebih baru, nilai datetime2 atau datetimeoffset yang terpotong dibuat di server.
Year(expression) DatePart(YEAR, expression)

Fungsi Agregat

Tabel berikut menjelaskan pemetaan fungsi agregat:

Fungsi kanonis SQL Server fungsi
Avg(expression) AVG(expression)
BigCount(expression) BIGCOUNT(expression)
COUNT(expression) COUNT(expression)
MIN(expression) MIN(expression)
MAX(expression) MAX(expression)
StDev(expression) STDEV(expression)
StDevP(expression) STDEVP(expression)
SUM(expression) SUM(expression)
Var(expression) VAR(expression)
VarP(expression) VARP(expression)

Fungsi matematika

Tabel berikut ini menjelaskan pemetaan fungsi matematika:

Fungsi kanonis SQL Server fungsi
Abs(value) ABS(value)
Ceiling(value) CEILING(value)
Floor(value) FLOOR(value)
Power(value) POWER(value, exponent)
Round(value) ROUND(value, digits, 0)
Truncate ROUND(value , digits, 1)

Fungsi string

Tabel berikut menjelaskan pemetaan fungsi string:

Fungsi kanonis SQL Server fungsi
Contains(string, target) CHARINDEX(target, string)
Concat(string1, string2) string1 + string2
EndsWith(string, target) CHARINDEX(REVERSE(target), REVERSE(string)) = 1

Catatan Fungsi CHARINDEX mengembalikan false jika string disimpan dalam kolom string dengan panjang tetap dan target merupakan konstanta. Dalam hal ini, seluruh string akan dicari, termasuk spasi padding tambahan. Solusi yang mungkin adalah memangkas data dalam string dengan panjang tetap sebelum meneruskan string ke fungsi EndsWith, seperti dalam contoh berikut: EndsWith(TRIM(string), target)
IndexOf(target, string2) CHARINDEX(target, string2)
Kiri (string1, length) LEFT(string1, length)
Panjang (string) LEN(string)
LTrim(string) LTRIM(string)
Kanan (string1, length) RIGHT (string1, length)
Trim(string) LTRIM(RTRIM(string))
Ganti (string1, string2, string3) REPLACE(string1, string2, string3)
Terbalik (string) REVERSE (string)
RTrim(string) RTRIM(string)
StartsWith(string, target) CHARINDEX(target, string)
Substring(string, start, length) SUBSTRING(string, start, length)
ToLower(string) LOWER(string)
ToUpper(string) UPPER(string)

Fungsi Bitwise

Tabel berikut menjelaskan pemetaan fungsi bitwise:

Fungsi kanonis SQL Server fungsi
BitWiseAnd (value1, value2) value1 & value2
BitWiseNot (value) ~value
BitWiseOr (value1, value2) value1 | value2
BitWiseXor (value1, value2) value1 ^ value2