単一行ファンクションは、問合せ対象の表またはビューの各行に対して1つの結果行を戻します。これらのファンクションは、SELECT構文のリスト、WHERE句、START WITH句、CONNECT BY句およびHAVING句に指定できます。
数値ファンクションは入力として数値を受け取り、結果として数値を戻します。数値ファンクションのほとんどは、38桁(10進)のNUMBER値を戻します。超越関数(COS、COSH、EXP、LN、LOG、SIN、SINH、SQRT、TANおよびTANH)は、36桁(10進)の値を戻します。超越関数のACOS、ASIN、ATAN、ATAN2は、30桁(10進)の値を戻します。数値ファンクションを次に示します。
文字値を戻す文字ファンクションは、特に指定がないかぎり、次のデータ型の値を戻します。
入力引数がCHARまたはVARCHAR2の場合、戻される値はVARCHAR2になります。
入力引数がNCHARまたはNVARCHAR2の場合、戻される値はNVARCHAR2になります。
ファンクションによって戻される値の長さは、戻されるデータ型の最大長によって制限されます。
CHARまたはVARCHAR2型の値を戻すファンクションの戻り値の長さが制限を超えた場合、Oracle Databaseは戻り値から制限を超えた部分を切り捨てて、エラー・メッセージを表示せずにその結果を戻します。
CLOB型の値を戻すファンクションの戻り値の長さが制限を超えた場合、Oracleはエラーを表示し、データを戻しません。
文字値を戻す文字ファンクションを次に示します。
数値を戻す文字ファンクションの引数には、すべての文字データ型を指定できます。数値を戻す文字ファンクションを次に示します。
キャラクタ・セット・ファンクションは、キャラクタ・セットの情報を戻します。キャラクタ・セット・ファンクションを次に示します。
日時ファンクションは、日付(DATE)、タイムスタンプ(TIMESTAMP、TIMESTAMP WITH TIME ZONE、TIMESTAMP WITH LOCAL TIME ZONE)および期間(INTERVAL DAY TO SECOND、INTERVAL YEAR TO MONTH)の値を操作します。
一部の日付ファンクションは、OracleのDATEデータ型(ADD_MONTHS、CURRENT_DATE、LAST_DAY、NEW_TIMEおよびNEXT_DAY)用に設計されています。これらのファンクションの引数にタイムスタンプ値を指定すると、Oracle Databaseは入力された型をDATE値に内部的に変換し、DATE値を戻します。ただし、MONTHS_BETWEENファンクションは数値を戻し、ROUNDおよびTRUNCファンクションはタイムスタンプ値または期間値を受け入れません。
その他の日時ファンクションは、3種類のすべてのデータ型(日付、タイムスタンプ、期間)を受け入れ、それらのいずれかのデータ型の値を戻すように設計されています。
SYSDATE、SYSTIMESTAMP、CURRENT_TIMESTAMPなどの、現在のシステム日時情報を戻す日時ファンクションはすべて、SQL文で参照される回数に関係なく、SQL文ごとに1回評価されます。
日時ファンクションを次に示します。
変換ファンクションは、あるデータ型から他のデータ型に値を変換します。一般に、ファンクション名はdatatype TO datatypeの書式で指定されます。最初のデータ型は入力データ型です。2番目のデータ型は出力データ型です。SQL変換ファンクションを次に示します。
ラージ・オブジェクト・ファンクションは、LOBを操作します。ラージ・オブジェクト・ファンクションを次に示します。
収集ファンクションは、ネストした表およびVARRAYを操作します。SQL収集ファンクションを次に示します。
データ・マイニング・ファンクションは、DBMS_DATA_MININGパッケージまたはOracle Data Mining Java APIを使用して作成したモデルを操作します。SQLデータ・マイニング・ファンクションを次に示します。
|
関連項目: SQLデータ・マイニング・ファンクションの詳細は、『Oracle Data Miningアプリケーション開発者ガイド』を参照してください。 |
XMLファンクションは、XML文書またはフラグメントを操作または戻します。これらのファンクションで使用する引数はANSI/ISO/IEC SQL規格の中には定義されていませんが、World Wide Web Consortium(W3C)標準の中に定義されています。ファンクションで実行される処理および操作は、該当するW3C標準で定義されています。次の表に、これらのXML関連の各引数に適用されるルールとガイドラインについて、W3C標準の該当する項へのリンクを示します。これらのXMLファンクションのいずれかをSQL文で使用する場合、該当するW3Cの構文に準拠していない引数を使用するとエラーになります。データベース列の値として使用できる文字が、XMLでも有効であるとはかぎらないことに注意してください。
| 構文要素 | W3C標準のURL |
|---|---|
value_expr |
http://www.w3.org/TR/2006/REC-xml-20060816 |
Xpath_string |
http://www.w3.org/TR/1999/REC-xpath-19991116 |
XQuery_string |
http://www.w3.org/TR/2007/REC-xquery-semantics-20070123/ |
namespace_string |
http://www.w3.org/TR/2006/REC-xml-names-20060816/ |
identifier |
http://www.w3.org/TR/2006/REC-xml-20060816/#NT-Nmtoken |
出力の書式設定など、これらのファンクションを使用したXMLデータの選択および問合せの詳細は、『Oracle XML DB開発者ガイド』を参照してください。
SQL XMLファンクションを次に示します。
エンコーディング・ファンクションおよびデコーディング・ファンクションでは、データベース内のデータを調査およびデコードできます。エンコーディング・ファンクションおよびデコーディング・ファンクションを次に示します。
NULL関連ファンクションは、NULL処理を簡単にします。NULL関連ファンクションを次に示します。
環境ファンクションおよび識別子ファンクションは、インスタンスとセッションの情報を提供します。環境ファンクションおよび識別子ファンクションを次に示します。