Bagikan melalui


Pemetaan Fungsi Model Konseptual Canonical ke SQL Server

Topik ini menjelaskan bagaimana fungsi kanonis model konseptual dipetakan ke fungsi SQL Server yang sesuai.

Fungsi Tanggal dan Waktu

Tabel berikut ini menjelaskan pemetaan fungsi tanggal dan waktu:

Fungsi kanonis Fungsi SQL Server
AddDays(ekspresi) DATEADD(day, number, date)
AddHours(expression) DATEADD(hour, number, date)
AddMicroseconds(ekspresi) DATEADD(microsecond, number, date)
AddMilliseconds(ekspresi) DATEADD(millisecond, number, date)
AddMinutes(ekspresi) DATEADD(minute, number, date)
AddMonths(ekspresi) 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 datetime yang diformat dibuat di server. Untuk SQL Server 2008 dan versi datetime2 ke atas, 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() pada 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() pada SQLServer 2008. GetUtcDate() di SQL Server 2000 dan SQL Server 2005.
DayOfYear(ekspresi) DatePart(dayofyear, expression)
Hari(ekspresi) 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)
Jam(ekspresi) DatePart(hour, expression)
Milidetik(ekspresi) DatePart(millisecond, expression)
Menit(ekspresi) DatePart(minute, expression)
Bulan(ekspresi) DatePart(month, expression)
Second(expression) DatePart(second, expression)
Memangkas(ekspresi) Untuk SQL Server 2000 dan SQL Server 2005, nilai yang diformat terpotong datetime dibuat di server. Untuk SQL Server 2008 dan versi yang lebih baru, nilai datetime2 atau datetimeoffset yang terpotong dibuat di server.
Tahun(ekspresi) DatePart(YEAR, expression)

Fungsi Agregat

Tabel berikut ini menjelaskan pemetaan fungsi agregat:

Fungsi kanonis Fungsi SQL Server
Rata-rata(fungsi) AVG(expression)
BigCount(ekspresi) BIGCOUNT(expression)
Count(expression) COUNT(expression)
Min(ekspresi) MIN(expression)
Maks(ekspresi) MAX(expression)
StDev(ekspresi) STDEV(expression)
StDevP(ekspresi) STDEVP(expression)
Jumlah(ekspresi) SUM(expression)
Var(ekspresi) VAR(expression)
VarP(ekspresi) VARP(expression)

Fungsi matematika

Tabel berikut ini menjelaskan pemetaan fungsi matematika:

Fungsi kanonis Fungsi SQL Server
Abs(value) ABS(value)
Pembulatan ke atas(nilai) CEILING(value)
Floor(value) FLOOR(value)
Power(value) POWER(value, exponent)
Round(value) ROUND(value, digits, 0)
Memotong ROUND(value , digits, 1)

Fungsi String

Tabel berikut ini menjelaskan pemetaan fungsi string:

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

Nota Fungsi CHARINDEX mengembalikan jika false disimpan dalam kolom string panjang tetap dan string merupakan konstantatarget. Dalam hal ini, seluruh string dicari, termasuk spasi tambahan di akhir. Solusi yang mungkin adalah memangkas data dalam string panjang tetap sebelum meneruskan string ke EndsWith fungsi, seperti dalam contoh berikut: EndsWith(TRIM(string), target)
IndexOf(target, string2) CHARINDEX(target, string2)
Left (string1, panjang) LEFT(string1, length)
Panjang (string) LEN(string)
LTrim(string) LTRIM(string)
Kanan (string1, panjang) RIGHT (string1, length)
HapusSpasi(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 ini menjelaskan pemetaan fungsi bitwise:

Fungsi kanonis Fungsi SQL Server
BitWiseAnd (nilai1, nilai2) value1 & value2
BitWiseNot (nilai) ~nilai
BitWiseOr (nilai1, nilai2) value1 | value2
BitWiseXor (nilai1, nilai2) value1 ^ value2