概念モデル正規関数と SQL Server 関数とのマッピング
このトピックでは、概念モデル正規関数を対応する SQL Server 関数にマップする方法について説明します。
日付と時刻関数
日付と時刻の関数のマッピングを次の表に示します。
正規関数 | SQL Server 関数 |
---|---|
DATEADD(day, number, date) |
|
DATEADD(hour, number, date) |
|
DATEADD(microsecond, number, date) |
|
DATEADD(millisecond, number, date) |
|
DATEADD(minute, number, date) |
|
DATEADD(month, number, date) |
|
DATEADD(nanosecond, number, date) |
|
DATEADD(second, number, date) |
|
DATEADD(year, number, date) |
|
SQL Server 2000 と SQL Server 2005 の場合、書式指定された datetime 値がサーバー上に作成されます。 SQL Server 2008 以上の場合、datetime2 値がサーバー上に作成されます。 |
|
CreateDateTimeOffset(year, month, day, hour, minute, second, tzoffset) |
A datetimeoffset formatted value is created on the server. SQL Server 2000 と SQL Server 2005 ではサポートされません。 |
A time formatted value is created on the server. SQL Server 2000 と SQL Server 2005 ではサポートされません。 |
|
SysDateTime() (SQL Server 2008)。 GetDate() (SQL Server 2000 および SQL Server 2005)。 |
|
SysDateTimeOffset() (SQL Server 2008)。 SQL Server 2000 と SQL Server 2005 ではサポートされません。 |
|
SysUtcDateTime() (SQL Server 2008)。 GetUtcDate() (SQL Server 2000 および SQL Server 2005)。 |
|
DatePart(dayofyear, expression) |
|
DatePart(day, expression) |
|
DATEDIFF(day, startdate, enddate) |
|
DATEDIFF(hour, startdate, enddate) |
|
DATEDIFF(microsecond, startdate, enddate) |
|
DATEDIFF(millisecond, startdate, enddate) |
|
DATEDIFF(minute, startdate, enddate) |
|
DATEDIFF(nanosecond, startdate, enddate) |
|
DATEDIFF(second, startdate, enddate) |
|
DATEDIFF(year, startdate, enddate) |
|
DatePart(tzoffset, expression) |
|
DatePart(hour, expression) |
|
DatePart(millisecond, expression) |
|
DatePart(minute, expression) |
|
DatePart(month, expression) |
|
DatePart(second, expression) |
|
SQL Server 2000 と SQL Server 2005 の場合、書式設定された datetime 値がサーバー上に作成されます。 SQL Server 2008 以上の場合、切り詰められた datetime2 値か datetimeoffset 値がサーバー上に作成されます。 |
|
DatePart(YEAR, expression) |
集計関数
集計関数のマッピングを次の表に示します。
正規関数 | SQL Server 関数 |
---|---|
AVG(expression) |
|
BIGCOUNT(expression) |
|
COUNT(expression) |
|
MIN(expression) |
|
MAX(expression) |
|
STDEV(expression) |
|
STDEVP(expression) |
|
SUM(expression) |
|
VAR(expression) |
|
VARP(expression) |
数学関数
数学関数のマッピングを次の表に示します。
正規関数 | SQL Server 関数 |
---|---|
ABS(value) |
|
CEILING(value) |
|
FLOOR(value) |
|
POWER(value, exponent) |
|
ROUND(value, digits, 0) |
|
ROUND(value , digits, 1) |
文字列関数
文字列関数のマッピングを次の表に示します。
正規関数 | SQL Server 関数 |
---|---|
CHARINDEX(target, string) |
|
string1 + string2 |
|
CHARINDEX(REVERSE(target), REVERSE(string)) = 1 メモ string が固定長文字列の列に格納されており、target が定数である場合、CHARINDEX 関数は false を返します。 この場合、末尾の埋め込み空白も含めて文字列全体が検索されます。 この問題を回避するには、データを固定長文字列の長さに合わせて切り詰めてから、文字列を |
|
CHARINDEX(target, string2) |
|
LEFT(string1, length) |
|
LEN(string) |
|
LTRIM(string) |
|
RIGHT (string1, length) |
|
LTRIM(RTRIM(string)) |
|
REPLACE(string1, string2, string3) |
|
REVERSE (string) |
|
RTRIM(string) |
|
CHARINDEX(target, string) |
|
SUBSTRING(string, start, length) |
|
LOWER(string) |
|
UPPER(string) |
ビット単位の関数
ビット単位の関数のマッピングを次の表に示します。
正規関数 | SQL Server 関数 |
---|---|
value1 & value2 |
|
~value |
|
value1 | value2 |
|
value1 ^ value2 |