別紙： 組み込み関数対応表（Oracle-PostgreSQL）
注1：対応するPostgreSQL関数が存在する、もしくはPostgreSQLでの対応方法がある場合には「○」を、問い合わせ言語関数、C言語関数などの対応での代替手段が考えられる場合には「△」、それ以外の場合（現時点で移行が難しい場合）には「×」を入れています。
「○」の場合には「対応するPostgreSQL関数もしくは PostgreSQLでの対応方法」列に詳細を記載しています。
「△」の場合には「備考」列に問い合わせ関数の定義例や留意事項を記載しています。
注2：orafceに対応関数が存在する場合には「○」を、存在しない場合は空欄としています。
Oracle関数

説明

PostgreSQL本体での対応可否(注1)

対応するPostgreSQL関数もしくはPostgreSQLでの対応方法

orafceでの対応可否(注2)

備考

本編紹介

数値ファンクション
ABS(n)n の絶対値を戻す。

○

abs(n)

ACOS(n)n のアーク・コサインを戻す。

○

acos(n)ASIN(n)n のアーク・サインを戻す。

○

asin(n)ATAN(n)n のアーク・タンジェントを戻す。

○

atan(n)ATAN2(n,m)

n およびm のアーク・タンジェントを戻す。

○

atan2(n, m)

BITAND(expr1, expr2)

expr1, expr2をビット単位でAND計算する。

○

&演算子

CEIL(n)n 以上の最も小さい整数を戻す。

○

ceil(n)

COS(n)

n のコサインを戻す。

○

cos(n)

COSH(n)n の双曲線コサインを戻す。

○(exp(n) + exp(-n)) / 2

EXP(n)e（= 2.71828183 ...）を n 乗した値を戻す。

○

exp(n)FLOOR(n)n 以下の最大整数を戻す。

○

floor(n)LN(n)

n の自然対数を戻す。

○

ln(n)

LOG(m, n)

m を底とする n の対数を戻す。

○

log(m, n)MOD(m, n)

m を n で割った余りを戻す。

○

mod(m, n)

NANVL(n2, n1)n2が非数値の場合は代替値n1、数値の場合はn2を戻す。

○

nanvl (n2, n1)

POWER(m, n)

m をn 乗した値を戻す。

○

power(m, n)

REMAINDER(n2, n1)

n2 を n1 で割った余りを戻す。

○

n1 - n2 * ROUND ( n1 / n2 )ROUND(n, m)

n を小数点以下 m 桁に丸めた値を戻す。

○

round(n, m)

SIGN(n)n の符号を戻す。

○

sign(n)

SIN(n)

n のサインを戻す。

○

sin(n)

SINH(n)n の双曲線サインを戻す。

○(exp(n)-exp(-n))/2

SQRT(n)n の平方根を戻す。

○

sqrt(n)TAN(n)

n のタンジェントを戻す。

○

tan(n)

TANH(n)n の双曲線タンジェントを戻す。

○(exp(n)-exp(-n))/(exp(n)+exp(-n))

TRUNC(n, m)

n を小数第 m 位までに切り捨てた値を戻す。

○

trunc(n, m)

WIDTH_BUCKET(expr,min_value, max_value,
num_buckets)

等幅ヒストグラムを作成する。

○

width_bucket(op numeric, b1 numeric, b2numeric, count int)

CHR(n)

文字コード番号 n に該当するデータベースキャラクタセットの文字を戻す。

○

chr(n)

CONCAT(char1, char2)

引数の文字列を連結する。

○

concat(char1, char2)

INITCAP(char)

各単語の最初の文字を大文字、残りの文字を小文字にした文字列を戻す。

○

initcap(char)

LOWER(char)

すべての文字を小文字にした文字列を戻す。

○

lower(char)

LPAD(char1, n, char2)

char1 の左に char2 に指定した文字を連続的に埋め込んで n 桁にして戻す。

○

lpad(char1, n, char2)○

マルチバイト文字を扱う場合の挙動が異なる。また、PostgreSQLは第2引数がinteger型である必要がある（numericは不可）

LTRIM(char, set)

charの左側にあってset に指定された文字を削除する。

○

ltrim(char, set)○

Oracleでは引数がchar型であれば戻り値もchar型（空白が残る）だが、PostgreSQLでは引数がcharacter型でも戻り値はtext型（空白があれば削除される）となる点に注意

NCHR(number)

各国語キャラクタ・セットのnumberと同等のバイナリを持つ文字を戻す。

×

NLS_INITCAP(char, 'nlsparam')

各単語の最初の文字を大文字、残りの文字を小文字にした文字列を戻す。

×

NLS_LOWER(char, 'nlsparam')

すべての文字を小文字にした文字列を戻す。

×

NLSSORT(char, 'nlsparam')

charのソートに使用される文字列のバイトを戻す。

×

NLS_UPPER(char, 'NLS_param =param_value')

すべての文字を大文字にした文字列を戻す。

×○

orafceを使用すればbitand関数も利用可能○○

orafceを使用すればcosh関数も利用可能

○

○

○

○

○

orafceを利用すればsinh関数も利用可能○○

orafceを利用すればtanh関数も利用可能○

文字値を戻す文字ファンクション○

REGEXP_REPLACE(string, pattern[,
replace[, pos[, occurrence[, match]]]]]) 正規表現パターンで文字列を検索できるようにREPLACEの機能を拡張したもの○

regexp_replace(string text, pattern text,
replacement text [, flags text])

REGEXP_SUBSTR(source_char, pattern[,
position[, occurrence[, match_param[,
subexpr]]]])○

regexp_matches(string text,pattern text [, flags text])

正規表現パターンで文字列を検索できるようにSUBSTRの機能を拡張したもの

Oracleでは引数がchar型であれば戻り値もchar型（空白が残る）だが、PostgreSQLでは引数がcharacter型でも戻り値はtext型（空白があれば削除される）となる点に注意

ページ 1

○

別紙： 組み込み関数対応表（Oracle-PostgreSQL）
REPLACE(char, search_string,
replacement_string)

replacement_string ですべての search_string を変換した文字列を戻す。

○

replace(char, search_string,

RPAD(char1, n, char2)

char1 の右に char2 で指定した文字を連続的に埋め込み、長さ n にして戻す。

○

rpad(char1, n, char2)○

RTRIM(char, set)char の右側にあって set に指定されたすべての文字を削除し、char を戻す。

○

rtrim(char, set)○

SOUNDEX(char)

char と同じ音声表現を持つ文字列を戻す。

△

SUBSTR(char, m, n)char のm 番目から n 文字分の文字列を抜き出して戻す。

○

substr(char, m, n)○

TRANSLATE(char, from, to)from 内のすべての文字を to 内の対応する文字に置換しcharを戻す。

○

translate(char, from, to)

TREAT(expr AS type)

式の宣言型を変更する。

×

TRIM([LEADING|TRAILING|BOTH][ trim_character]
FROM trim_source)

文字列の先行または後続文字を切り捨てる。

○

trim([leading | trailing | both] [characters]from string)

UPPER(char)

すべての文字を大文字にして char を戻す。

○

upper(char)

ASCII(char)

char のデータベース・キャラクタ・セットでの10 進表記を戻す。

○

ascii(char)

INSTR(string, substring)

substring が現れる位置を戻す。

○

strpos(string, substring)○

LENGTH(char)

char の長さを文字単位で戻す。

○

length(char)○

REGEXP_COUNT (source_char, pattern [,position [, match_param]])

ソース文字列でパターンが発生した回数を戻し、REGEXP_INSTRファンクションの機能を補完する。

△

REGEXP_INSTR( string , pattern[ , pos [, occurrence [, offset [,match]]]] )正規表現パターンの文字列を検索できるようにINSTRの機能を拡張したもの△

NLS_CHARSET_DECL_LEN(bytecnt, csid)

NCHAR 列の宣言の幅を戻す。

×

NLS_CHARSET_ID(text)

NLSキャラクタ・セット名 text に対応するNLS キャラクタ・セットのID 番号を戻す。

×

NLS_CHARSET_NAME(n)ID番号 n に対応するNLSキャラクタ・セット名を戻す。

×

ADD_MONTHS (date, integer)日付dateに月数integerを加えて戻す。

○＋演算子を使って書き換え可能
例: select date '2013-03-22' + interval '1 months'

CURRENT_DATE

セッション・タイムゾーンの現在の日付を戻す。

○

current_date、current_timestamp○

CURRENT_TIMESTAMP

セッション・タイムゾーンの現在の日付および時刻をTIMESTAMP WITH TIME ZONEデー
タ型の値で戻す。

○

current_timestamp○

replacement_string)
マルチバイト文字を扱う場合の挙動が異なる。また、PostgreSQLは第2引数がinteger型である必要がある（numericは不可）
Oracleでは引数がchar型であれば戻り値もchar型（空白が残る）だが、PostgreSQLでは引数がcharacter型でも戻り値はtext型（空白があれば削除される）となる点に注意
contribのfuzzystrmatchモジュール内に同名関数があるが、マルチバ
イト符号化方式では充分に動作しない。
第2引数が負値の場合の挙動が異なるため注意が必要（orafceを使用すると解消される）○

Oracleでは引数がchar型であれば戻り値もchar型（空白が残る）だが、PostgreSQLでは引数がcharacter型でも戻り値はtext型（空白があれば削除される）となる点に注意

数値を戻す文字ファンクション○
Orafce 3.1.2に存在正規表現パターンを取り扱う関数であるregexp_matches（REGEXP_SUBSTRの代替として利用可能な関数）の実装を流用することで、C言語関数として実装可能。ただし、PostgreSQLのソースコー
ドに対する一定の理解は必要。
正規表現パターンを取り扱う関数であるregexp_matches（REGEXP_SUBSTRの代替として利用可能な関数）の実装を流用することで、C言語関数として実装可能。ただし、PostgreSQLのソースコー
ドに対する一定の理解は必要。

○○

NLS文字ファンクション

日時ファンクション

DBTIMEZONE

データベースのタイムゾーンの値を戻す。

○

システムカタログpg_settingsから、'TimeZone'のreset_valの値を取得する。
SELECT reset_val FROM pg_settings WHERE name ='TimeZone';

EXTRACT (element FROM date)

日時式または期間式から指定された日時フィールドの値を抽出して戻す。

○

extract(field from timestamp)

FROM_TZ(timestamp, time_zone_value)

タイムスタンプ値およびタイムゾーンをTIMESTAMP WITH TIME ZONE値に変換する。

○

timezone(time_zone_value, timestamp);

LAST_DAY(d)d を含む月の最後の日付を戻す。

○

last_date(date)

LOCALTIMESTAMP

セッション・タイムゾーンの現在の日付および時刻をTIMESTAMPデータ型の値で戻す。

○

localtimestamp

MONTHS_BETWEEN(d1, d2)

d1 とd2 の間の月数を戻す。

○

months_between(d1, d2)

NEW_TIME(d, z1, z2)

時間帯z1の日時がdの時点の時間帯z2の日時を戻す。

○

timezone(z2, timezone(z1, TIMESTAMP WITHOUT TIMEZONE d))NEXT_DAY(d, char)

charで指定した曜日で日付d以降の最初の日付を戻す。

○

next_day(date, text)

NUMTODSINTERVAL(n, 'char_expr')

n をINTERVAL DAY TO SECOND リテラルに変換する。

○

MAKE_INTERVAL(expr:=n)

NUMTOYMINTERVAL(n, 'char_expr')

n をINTERVAL YEAR TO MONTH リテラルに変換する。

○

MAKE_INTERVAL(expr:=n)

ROUND(d, fmt)

d を書式 fmt で指定した単位に丸めた結果を戻す。

○

round(date, text)
CURRENT_SETTING関数を使用して、現在の'TimeZone'の値を取得する。
current_setting('TimeZone');timezone('UTC', TIMESTAMP WITH TIME ZONE
datetimewith_timezone);SESSIONTIMEZONE

現行セッションのタイムゾーンを返す。

○

SYS_EXTRACT_UTC(datetime_with_timezone)

タイムゾーン付日時から協定世界時(UTC)を抽出する。

○

SYSDATE

現在の日時を戻す。

○

current_date、current_timestamp、clock_timestamp

SYSTIMESTAMP

システムのタイムスタンプを戻す。

○

current_timestamp、clock_timestamp

TRUNC(d, fmt)

時刻部分を書式fmtで指定された単位まで切捨てる。

○

date_trunc(text, timestamp)

ページ 2

○

○

orafceを利用すればadd_months関数も利用可能

orafce 3.2.1に存在

○

○

○
○

○

○

○
○

○
必要に応じINTERVAL DAY TO SECOND型に明示的にキャスト○○

必要に応じINTERVAL YEAR TO MONTH型に明示的にキャスト○○○

orafce 3.2.1に存在○

orafce 3.2.1に存在○

orafceを使用すればtrunc関数も利用可能

○
○
○
○
○

別紙： 組み込み関数対応表（Oracle-PostgreSQL）

引数のタイムゾーン・オフセットを戻す。

○

pg_timezone_namesシステムカタログを利用して書き換え
SELECT utc_offset FROM pg_timezone_names WHERE name
= timezone;

GREATEST(expr)

expr リストの最大値を戻す。

○

greatest(expr)

LEAST(expr)

expr リストの最小値を戻す。

○

least(expr)

char をアスキーコードだけを使用した形式に変換する。

○

to_ascii(string text)

TZ_OFFSET(char)○

一般的な比較ファンクション

変換ファンクション
ASCIISTR(char)

BIN_TO_NUM(expr)

ビット・ベクトルを同等の数値に変換する。

△

CAST(expr AS type_name)

別のデータ型の値に変換する。

○

CHARTOROWID(char)

ROWID データ型に変換する。

×

COMPOSE(char)

引数と同じキャラクタ・セットでUnicode文字列を戻す。

×

CONVERT(char, dest_char_set,
source_char_set)

文字列をあるキャラクタ・セットから別のキャラクタ・セットに変換する。

○

DECOMPOSE(string)

同じキャラクタ・セットで分解されたUnicodeの文字列を戻す。

×

HEXTORAW(char)

16 進数を含む char を RAW 値に変換する。

△

RAWTOHEX(raw)

rawを16進で表した文字値に変換する。

×

RAWTONHEX(raw)

rawを16進で表した文字値に変換する。TO_NCHAR(RAWTOHEX(raw))と同じ。

△

ROWIDTOCHAR(rowid)

ROWID の値をVARCHAR2データ型に変換する。

×

ROWIDTONCHAR(rowid)

ROWID の値をNVARCHAR2データ型に変換する。

×

SCN_TO_TIMESTAMP(number)

システム変更番号(SCN System Change Number)に関連付けられた概数のタイムスタン
プを戻す。

×

TIMESTAMP_TO_SCN(timestamp)

引数のタイムスタンプに関連付けられたシステム変更番号(SCN)の概数を戻す。

×

倍精度の浮動小数点数を戻す。

×

単精度の浮動小数点数を戻す。

×

LONG RAWおよびRAW値をBLOB値に変換する。

×

TO_BINARY_DOUBLE ( expr [, format [,nls_param]] )TO_BINARY_FLOAT ( expr [, format [,nls_param]] )TO_BLOB(raw_value)

TO_CHAR(n, fmt)

NCHAR、NVARCHAR2、CLOBまたはNCLOBデータをデータベース・キャラクタ・セットに変換します。戻り値は常にVARCHAR2です。
DATEデータ型 d を日付書式 fmt で指定した書式のVARCHAR2 データ型の値に変換する。
NUMBERデータ型の n を数値書式 fmt で指定した書式のVARCHAR2 データ型の値に変換する。

TO_CLOB(lob_column)

LOB列またはNCLOB値をCLOB値に変換する。

×

TO_DATE(char, fmt)

CHARデータ型またはVARCHAR2データ型のcharを、DATE データ型の値に変換する。

○

TO_DSINTERVAL(char)

CHAR、VARCHAR2、NCHARまたはNVARCHAR2データ型の文字列を、INTERVAL DAY TO
SECOND型に変換する。

×

TO_LOB(long_column)

LONGまたはLONG RAW 値をLOB値に変換する。

×

TO_MULTI_BYTE(char)

すべてのシングルバイト文字を、対応するマルチバイト文字に変換する。

×

TO_CHAR(nchar|clob|nclob)
TO_CHAR(d, fmt)

TO_NCHAR(char[, format[, nls_param]])
TO_NCHAR(date[, format[, nls_param]])

文字列、CHAR、VARCHAR2、CLOBまたはNCLOB値を各国語キャラクタ・セットに変換する。
日付または期間値をデータベース・キャラクタ・セットから各国語キャラクタ・セッ
トに変換する。

LATIN1、LATIN2、LATIN9、WIN1250符号化方式からの変換のみをサポートする。
代替関数の定義例を示す。
※BIN_TO_NUM関数の作成例(引数は可変長引数のint、戻り値はint型とする)
CREATE OR REPLACE FUNCTION BIN_TO_NUM(VARIADIC arr int[])
RETURNS integer AS $$SELECT lpad(array_to_string($1, ''), 32, '0')::bit(32)::int;$$ LANGUAGE SQL IMMUTABLE;○

CAST ( expression AS type )convert(string bytea,src_encoding name,dest_encoding
name)OracleとPostgreSQLで使用可能なキャラクタセットに違いがあり、引数に指定する名称が異なるため、書き換えが必要となる。

○

RAW型をbytea型への対応付けが可能な場合はdecode関数で代用が可能。
※decode関数を利用したHEXTORAW関数の作成例(引数はtext型、戻り値はbytea型とする)
CREATE OR REPLACE FUNCTION HEXTORAW(text)
RETURNS bytea AS $$SELECT decode($1, 'hex');$$ LANGUAGE SQL IMMUTABLE;○

RAW型をbytea型への対応付けが可能な場合はencode関数で代用が可能。
※encode関数を利用したRAWTOHEX関数の作成例(引数はbytea型、戻り値はtext型とする)
CREATE OR REPLACE FUNCTION RAWTOHEX(bytea)
RETURNS text AS $$SELECT encode($1, 'hex');$$ LANGUAGE SQL IMMUTABLE;○×○

to_char(d, fmt)○

to_char(n, fmt)

to_date(char, fmt)

○

×
×

ページ 3

Orafce 3.1.2に存在

別紙： 組み込み関数対応表（Oracle-PostgreSQL）
TO_NCHAR(n[, format[, nls_param ]])数値を各国語キャラクタ・セットの文字列に変換する。

×

TO_NCLOB(lob_column)

LOB列またはCLOB値をNCLOB値に変換する。

×

TO_NUMBER(char, fmt)

fmtで指定された書式の数を含むcharを、NUMBER データ型の値に変換する。

○

TO_SINGLE_BYTE(char)

すべてのマルチバイト文字を、対応するシングルバイト文字に変換する。

×

CHAR、VARCHAR2、NCHARまたはNVARCHAR2データ型の文字列を、TIMESTAMPデータ型の値に変換する。
CHAR、VARCHAR2、NCHARまたはNVARCHAR2データ型のcharをTIMESTAMP WITH TIME ZONETO_TIMESTAMP_TZ(char, fmt)
データ型の値に変換する。
CHAR、VARCHAR2、NCHARまたはNVARCHAR2データ型の文字列を、INTERVAL YEAR TO
TO_YMINTERVAL(char)
MONTH型に変換する。
TRANSLATE(text USING CHAR_CS | NCHAR_CS) text をデータベース・キャラクタ・セットと各国語キャラクタ・セット間の変換に指定されたキャラクタ・セットに変換する。
引数としてテキスト・リテラルまたは文字データに変換する式を取り、各国語キャラ
UNISTR(string)
クタ・セットで戻す。
TO_TIMESTAMP(char, fmt)

to_number(char, fmt)○

to_timestamp(text, text)○

to_timestamp(text, text)○

Orafce 3.1.2に存在○

orafceを使用すればdecode関数も利用可能

××○

u&'XXXXXX'

ラージ・オブジェクト・ファンクション
BFILENAME('directory', 'filename')

サーバーのファイルシステムの物理LOBバイナリファイルに対応付けられているBFILE
ロケータを戻す。

×

EMPTY_BLOB() | EMPTY_CLOB()

空のLOBロケータを戻す。

×

エンコーディング・ファンクションおよびデコーディング・ファンクション
各searchの値を1つずつ比較し、対応するresultを戻す。
expr のデータ型コード、長さ（バイト単位）および内部表現を含むVARCHAR2値を戻す。
指定された式のハッシュ値を計算する。

○

DUMP(expr)
ORA_HASH(expr[, max_bucket[,seed_value]])
VSIZE(expr)

expr の内部表現でのバイト数を戻す。

△

COALESCE (expr_list)

式のリストの最初のNULLでないexprを戻す。

○

coalesce(expr_list)

LNNVL(condition)

引数の条件がFALSEまたはUNKNOWNの場合はTRUEを戻し、TRUEの場合はFALSEを戻す。

○

lnnvl (boolean)

NULLIF(expr1, expr2)

expr1とexpr2を比較し、同じである場合はNULL、異なる場合はexpr1を戻す。

○

NULLIF(value1, value2)

NVL(expr1, expr2)

expr1がNULLの場合expr2、NULLでない場合expr1を戻す。

○

coalesce(expr1, expr2)○

NVL2(expr1, expr2, expr3)

expr1がNULLでない場合expr2、NULLの場合expr3を戻す。

○

coalesce(expr1, expr2, expr3)○

AVG(expr)

expr の平均値を戻す。

○

avg(expr)

COLLECT([DISTINCT | UNIQUE] column[ORDER BY expr])

任意の型の列を引数に取り、選択された行から入力された型のネストした表を作成する。

×

CORR(expr1, expr2)

数値の組の集合に対する相関係数を戻す。

○

corr(expr1, expr2)

COUNT(expr)

問合せ内の行数を戻す。

○

count(expr)

COVAR_POP(expr1, expr2)

数値の組の集合に対する母集団共分散を戻す。

○

covar_pop(expr1, expr2)

COVAR_SAMP(expr2, expr2)

数値の組の集合の標本共分散を戻す。

○

covar_samp(expr1, expr2)

CUME_DIST() OVER( ORDER_BY_clause)

値のグループにある特定の値の相対位置を計算する。

○

cume_dist()

DENSE_RANK() OVER ( ORDER_BY_clause)

他の行について問合せで戻される各行のランクを計算する。

○

dense_rank()

FIRST

ソートしたレコードの先頭行に集計関数を使用する。

×

GROUP_IDGROUP BY指定の結果から重複するグループを識別する。

×

GROUPING(expr)

ROLLUP や CUBE など、GROUP BY の拡張機能を含むSELECT 文にのみ適用する。

○

GROUPING_ID(expr[, expr]...)

行に関連するGROUPINGビット・ベクトルに対応する数値を戻す。

×

LAST

ソートしたレコードの最終行に集計関数を使用する。

×

LISTAGG (expr[, delimiter] ) WITHINGROUP (order_by)

指定されたメジャーについて、ORDER BY句に指定された各グループ内でデータを順序付け、メジャー列の値を結合する。

×MAX(expr)

exprの最大値を戻す。

○

MEDIAN(expr)

引数の中央値、または値のソート後に中央値となる補間された値を戻す。

×

MIN(expr)

exprの最小値を戻す。

○

min(expr)

PERCENT_RANK() OVER (ORDER_BY_clause)

行R に対して、Rのランクから1 引いた数を評価される行数（問合せ結果セット全体またはパーティション）より1 少ない数で割る。

○

percent_rank()

PERCENTILE_CONT(expr) WITHIN GROUP(ORDER BY expr[DESC|ASC])[OVER (query_partition_clause)]
PERCENTILE_DISC(expr) WITHIN GROUP(ORDER BY expr[DESC|ASC])[OVER (query_partition_clause)]

パーセンタイル値およびソート指定を使用し、そのソート指定に従ってそのパーセン
タイル値に該当する補間された値を戻す。

○

パーセンタイル値およびソート指定を指定し、そのセットから要素を戻す。

○

RANK() OVER (ORDER_BY_clause)

ある問合せが戻す他の行について、その問合せが戻す各行のランクを計算する。

○

DECODE(expr, search, result)case式で置き換える。

×

○

○
○

×
引数型のoidからpg_typeカタログを参照しサイズ(typlen）を算出。
typlen=実サイズじゃないものもあるので、datum.cのdatumGetSize関数で実サイズを確認。

○

NULL関連ファンクション○○

集計ファンクション

9.5より

○

orafce 3.1.2に存在○

orafce 3.1.2に存在

max(expr)

rank()

ページ 4

別紙： 組み込み関数対応表（Oracle-PostgreSQL）
REGR_SLOPEREGR_INTERCEPTREGR_COUNTREGR_R2
REGR_AVGXREGR_AVGYREGR_SXXREGR_SYYREGR_SXY

線形回帰ファンクション○

STATS_BINOMIAL_TEST

有効な値が2つのみである二値変数に使用する直接確立法

×STATS_CROSSTAB

2つの名義変数の分析に使用するクロス集計

×

STATS_F_TEST

2つの分散に有意差があるかどうかをテストする。

×

STATS_KS_TEST

2つの標本を比較して、それらが同じ母集団に属しているか、または同じ分布を持つ母集団に属しているかをテストするKolmogorov-Smirnovファンクション

×

STATS_MODE

引数の値の集合で最も出現頻度の高い値を戻す。

×

STATS_MW_TEST

Mann-Whitney検定

×

STATS_ONE_WAY_ANOVA

一元配置分散分析

×STATS_T_TEST_*t検定

×STATS_WSR_TEST

ウィルコクソンの符号順位検定

×

STDDEV(expr)

数値の集合であるexprの標本標準偏差を戻す。

○

stddev(expr)

STDDEV_POP(expr)

母集団標準偏差を計算し、母集団分散の平方根を戻す。

○

stddev_pop(expr)

STDDEV_SAMP(expr)

標本累積標準偏差を計算し、標本分散の平方根を戻す。

○

stddev_samp(expr)

SUM(expr)

expr の値の合計を戻す。

○

sum(expr)

SYS_XMLAGG(expr[, fmt])

exprによって表されるすべてのXML文書またはXMLフラグメントを集約し、単一のXML文書を生成する。

○

xmlagg(expression)

VAR_POP(expr)

数値の集合にあるNULL を削除した後、この集合の母集団分散を戻す。

○

var_pop(expr)

VAR_SAMP(expr)

数値の集合にあるNULL を削除した後、この集合の標本分散を戻す。

○

var_samp(expr)

VARIANCE(expr)

expr の分散を戻す。

○

variance(expr)

XMLAGG(XMLType_instance[ order_by_clause ])XMLフラグメントのコレクションを取り、集計されたXML文書を戻す。

○

xmlagg(expression)

LAG(value_expr, offset, default)

問合せから戻される一連の行およびカーソル位置を指定すると、その位置より前にある指定された物理オフセットにある行へアクセスする。

○

lag(value_expr, offset, default)

FIRST_VALUE(expr)

順序付けられた値の集合にある最初の値を戻す。

○

first_value(expr)

LAST_VALUE(expr)

順序付けられた値の集合にある最後の値を戻す。

○

last_value(expr)

LEAD(value_expr, offset, default)

問合せから戻される一連の行およびカーソル位置を指定すると、その位置より後にある指定された物理オフセットの行へアクセスする。

○

lead(value_expr, offset, default)

NTH_VALUE (measure_expr, n)
OVER (analytic_clause)analytic_clauseに定義したウィンドウ内でn番目の行のmeasure_expr値を戻す。

○

nth_value(value any, nth integer)

NTILE(expr)

順序付けられたデータセットをexprに指定した数のバケットに分割し、バケット番号を各行に割り当てる。

○

ntile(expr)

RATIO_TO_REPORT(expr) OVER ()ある値の集合の合計に対するその値の比率を計算する。

×

ROW_NUMBER() OVER (ORDER_BY_clause)

ORDER_BY_clause に指定された行の、1 から始まる順序シーケンスで、この関数が適用される各行（パーティションの各行、または問合せが戻す各行）に一意の数値を割
り当てる。

○

row_number()

CARDINALITY

ネストした表内の要素数を戻す。

○

cardinality(anyarray)

COLLECT

任意の型の列を引数に取り、選択された行から、入力された型のネストした表を作成する。
入力としてネストした表を取り、入力された表のすべての空でないサブセットを含む
サブ多重集合を戻す。

×

POWERMULTISET_BY_CARDINALITY

入力としてネストした表およびカーディナリティを取り、指定されたカーディナリテ
ィを持つネストした表のすべての空でないサブセットを含むサブ多重集合を戻す。

×

SET

重複を排除することによってネストした表を単一の集合に変換する。

×ルートからノードへの列の値のパスを、CONNECT BY条件で戻された各行をcharで区切った列の値とともに戻す。

×

CLUSTER_ID

最も確率の高い予測クラスタのクラスタ識別子を戻す。

×

CLUSTER_PROBABILITY

指定したモデルに関連付けられたクラスタにある入力行のメンバーシップの確信度のメジャーを戻す。

×

CLUSTER_SET

指定した行が属している可能性のあるクラスタを含むオブジェクトを戻す。

×

FEATURE_ID

行内で最も高い数値を持つ特徴の識別子を戻す。

×分析ファンクション

収集ファンクション

POWERMULTISET×

階層ファンクション
SYS_CONNECT_BY_PATH
データ・マイニング・ファンクション

ページ 5

別紙： 組み込み関数対応表（Oracle-PostgreSQL）
FEATURE_SET

有効な特徴を含むオブジェクトのVARRAYを戻す。

×

FEATURE_VALUE

指定した特徴の値を戻す。

×

PREDICTION

モデルの最適な予測を戻す。

×

PREDICTION_BOUNDSLOWERとUPPERの2つのNUMBERフィールドを持つオブジェクトを戻す。

×

PREDICTION_COST

指定した予測のコストのメジャーを戻す。

×

PREDICTION_DETAILS

入力行のスコアリングに関連するモデル固有の情報を含むXML文字列を戻す。

×

PREDICTION_PROBABILITY

指定した予測の確率を戻す。

×

PREDICTION_SET

複数クラスの分類の使用例で全てのクラスを含むオブジェクトのVARRAYを戻す。

×

APPENDCHILDXML

ユーザー指定の値をXPath式で指定したノードの子としてターゲットXMLに追加する。

×

DELETEXML

ターゲットXMLのXPath式で一致するノードを削除する。

×

DEPTH

同じ相関変数を持つUNDER_PATH条件によって指定されるパスのレベル数を戻す。

×

XML ファンクション

EXTRACTVALUE指定されたパスを使用するXML文書のトラバースが任意のノードとなるかどうかを決定する。
VARCHAR2のXPath文字列を適用し、XMLのフラグメントを含むXMLTypeインスタンスを戻す。
引数としてXMLTypeインスタンスとXPath式を取り、結果として得られるノードのスカ
ラー値を戻す。

INSERTCHILDXML

ユーザー指定の値をXPath式で指定したノードのターゲットXMLに挿入する。

×

INSERTCHILDXMLAFTER

1つ以上のコレクション要素をターゲット親要素の子として挿入する。

×

INSERTCHILDXMLBEFORE

ユーザー指定の値をXPath式で指定したノードの前のターゲットXMLに挿入する。

×

INSERTXMLAFTER

属性のノードではないターゲット・ノードの直後にノードを挿入する。

×

INSERTXMLBEFORE

ユーザー指定の値をXPath式で指定したノードの前のターゲットXMLに挿入する。

×

PATH

親条件で指定されたリソースへの相対パスを戻す。

○

SYS_DBURIGEN

特定の列または行オブジェクトへのDBUriTypeデータ型のURLを生成する。

×

EXISTSNODEEXTRACT（XML）

×××

xpath(xpath, xml [, nsarray])xpath_exists(xpath, xml [, nsarray])

UPDATEXML

exprによって表されるすべてのXML文書またはXMLフラグメントを集約し、単一のXML文書を生成する。
データベースの特定の行および列を評価する式を取り、XML文書を含むXMLType型のインスタンスを戻す。
引数としてXMLTypeインスタンスおよびXPath値の組を取り、更新された値を持つ
XMLTypeインスタンスを戻す。

XMLAGG

XMLフラグメントのコレクションを取り、集計されたXML文書を戻す。

○

XMLCASTvalue_expressionをdatatypeで指定したスカラーSQLデータ型にキャストする。

×

XMLCDATA

value_exprを評価してCDATAセクションを生成する。

×

XMLCOLATTVAL

XMLフラグメントを作成し、各XMLフラグメントの名前がcolumn、属性がnameとなるよ
うに、結果としてできたXMLを展開する。

×

XMLCOMMENT

value_exprの評価結果を使用しXMLコメントを生成する。

○

xmlcomment(text)

XMLCONCAT

入力として一連のXMLTypeインスタンスを取り、各行について一連の要素を連結し、連結した結果を戻す。

○

xmlconcat(xml[, ...])

XMLDIFF

2つのXML文書を比較し、Xdiffスキーマに基づいたXMLの差異を取得する。

×

SYS_XMLAGG
SYS_XMLGEN

×××
xmlagg(xml)

XMLISVALID

identifierに対する要素名を取るか、またはEVALNAME value_exprの要素名、要素に対する属性のオプションのコレクション、およびその要素の内容を構成する引数を評価する。
指定されたXQuery式から空でないXQueryシーケンスが戻されるかどうかをチェックする。
各引数パラメータをXMLに変換し、変換された引数を連結したXMLフラグメントを戻す。
入力されたXMLType_instanceが、関連するXMLスキーマに準拠するかどうかをチェックする。

XMLPARSE

value_exprの評価結果からXMLインスタンスを解析して生成する。

○

XMLPARSE ( { DOCUMENT | CONTENT } value)

XMLPI

identifierとvalue_exprの評価結果を使用して、XMLの処理命令を生成する。

○

xmlpi(name target [, content])

XMLQUERY

文字列リテラル、オプションのコンテキスト項目、および他のバインド変数としてXQuery式を取り、これらの入力値を使用してXQuery式の評価結果を戻す。

×

XMLROOT

既存のXML値のXMLルート情報のバージョンとスタンドアロンのプロパティを指定して、新しいXML値を作成する。

○

XMLSEQUENCE

下位互換性を保つためにサポート。非推奨

×

XMLSERIALIZE

value_exprの内容を含む文字列またはLOBを作成する。

○

XMLTABLE

XQueryの評価結果をリレーショナル行および列にマップする。

×

XMLELEMENTXMLEXISTS
XMLFOREST○

xmlelement(name name [, xmlattributes(value [ASattname] [, ... ])] [, content, ...])○XMLEXISTS(text PASSING [BY REF] xml [BY REF])○

xmlforest(content [AS name] [, ...])

×xmlroot(xml, version text | no value [, standalone
yes|no|no value])XMLSERIALIZE ( { DOCUMENT | CONTENT } value AS
type )

ページ 6

別紙： 組み込み関数対応表（Oracle-PostgreSQL）
XMLTRANSFORM

引数としてXMLTypeインスタンスおよびXSLスタイルシートを取る。

×

SYS_CONTEXT('namespace', 'attribute')

コンテキストnamespace に対応付けられたattributeの値を戻す。

×

SYS_GUID()

16バイトで構成されたグローバルな一意の識別子を生成して戻す。

×

SYS_TYPEID(object_type_value)

オペランドで最も指定される型の型IDを戻す。

×

UID

セッション・ユーザーを一意に識別する整数を戻す。

×

USER

セッション・ユーザーの名前を戻す。

○

USERENV(option)

カレント・セッションに関する情報を戻す。

×

環境ファンクション

user,current_user

オブジェクト参照ファンクション
DEREF(expr)
MAKE_REF(table, key)

DEREF は、引数expr のオブジェクト参照を戻します。この場合、expr はオブジェク
トにREF を戻す必要があります。問合せでこの関数を使用しない場合、次の例で示す
とおり、かわりにREF のオブジェクトID を戻します。
MAKE_REF は、オブジェクト識別子が主キーに基づいている、オブジェクト・ビューの行またはオブジェクト表の行に対するREF を作成します。

××

SQL 文では、REF の引数として、オブジェクト表またはオブジェクト・ビューの行に対応付けられている相関変数（表別名）が指定されます。変数または行にバインドされたオブジェクト・インスタンスについてのREF 値が戻ります。

×

REFTOHEX(expr)

REFTOHEX は、引数expr を16 進で表した文字値に変換します。

×

VALUE(correlation_variable)

SQL 文では、VALUE の引数として、オブジェクト表の行に対応付けられている相関変数（表別名）がとられ、オブジェクト表に格納されたオブジェクト・インスタンスを
戻します。

×

CV

ルールの左側から右側に送られたディメンション列またはパーティション列の現在の
値を戻す。

×

ITERATION_NUMBER

モデル・ルールに従って完了した反復を示す整数を戻す。

×

REF(correlation_variable)

モデル・ファンクション

PRESENTV

cell_referenceがmodel_clauseの実行前に存在し、PRESENTNNVの評価時にNULLではな
い場合にexpr1を戻し、それ以外の場合はexpr2を戻す。
cell_referenceが存在する場合、model_clauseを実行する前にexpr1を戻し、それ以外の場合はexpr2を戻す。

PREVIOUS

各反復の最初にcell_referenceの値を戻す。

×

キューブまたはディメンションのデータを抽出し、SQLベースのアプリケーションで使用可能な2次元形式のリレーショナル表に戻す。

×

対応するシステム・パーティション表のパーティションIDを戻す。

×

PRESENTNNV××

OLAPファンクション
CUBE_TABLE
データ・カートリッジ・ファンクション
DATAOBJ_TO_PARTITION

ページ 7