共用方式為


概念模型標準與 SQL Server 函式的對應

本主題描述概念模型標準函式如何對應到相對應的 SQL Server 函式。

日期及時間函式

下表描述日期與時間函式的對應:

標準函式 SQL Server 函式
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(year, month, day, hour, minute, second) 針對 SQL Server 2000 和 SQL Server 2005,伺服器上會建立 datetime 格式的值。 針對 SQL Server 2008 和以後版本,伺服器上會建立 datetime2 值。
CreateDateTimeOffset(year, month, day, hour, minute, second, tzoffset) 伺服器上會建立 datetimeoffset 格式的值。

在 SQL Server 2000 或 SQL Server 2005 中不支援。
CreateTime(hour, minute, second) 伺服器上會建立 time 格式的值。

在 SQL Server 2000 或 SQL Server 2005 中不支援。
CurrentDateTime() SQLServer 2008 中:SysDateTime()

SQLServer 2000 和 SQLServer 2005 中:GetDate()
CurrentDateTimeOffset() SQL Server 2008 中:SysDateTimeOffset()

在 SQL Server 2000 或 SQL Server 2005 中不支援。
CurrentUtcDateTime() SQLServer 2008 中:SysUtcDateTime()。 SQL Server 2000 和 SQL Server 2005 中:GetUtcDate()
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) 對於 SQL Server 2000 和 SQL Server 2005,會在伺服器上建立截斷的 datetime 格式化值。 對於 SQL Server 2008 和更新版本,會在伺服器上建立截斷的 datetime2datetimeoffset 值。
Year(expression) DatePart(YEAR, expression)

彙總函式

下表描述彙總函式的對應:

標準函式 SQL Server 函式
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)

數學函數

以下資料表描述數學函式的對應:

標準函式 SQL Server 函式
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)

字串函式

下表描述字串函式的對應:

標準函式 SQL Server 函式
Contains(string, target) CHARINDEX(target, string)
Concat(string1, string2) string1 + string2
EndsWith(string, target) CHARINDEX(REVERSE(target), REVERSE(string)) = 1

附註: 如果 string 儲存在固定長度的字串資料行中且 target 是常數,則 CHARINDEX 函式會傳回 false。 在這個情況下,會搜尋到整個字串,包括任何填補的後端空格。 可能的解決方法是傳遞字串至 EndsWith 函式前,修剪固定長度字串中的資料,如以下範例所示:EndsWith(TRIM(string), target)
IndexOf(target, string2) CHARINDEX(target, string2)
Left (string1, length) LEFT(string1, length)
Length (string) LEN(string)
LTrim(string) LTRIM(string)
Right (string1, length) RIGHT (string1, length)
Trim(string) LTRIM(RTRIM(string))
Replace (string1, string2, string3) REPLACE(string1, string2, string3)
Reverse (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)

位元函式

下表描述位元函式的對應:

標準函式 SQL Server 函式
BitWiseAnd (value1, value2) value1 & value2
BitWiseNot (value) ~value
BitWiseOr (value1, value2) value1 | value2
BitWiseXor (value1, value2) value1 ^ value2