• 検索結果がありません。

式の指定 式の指定 式の指定 式の指定

ドキュメント内 Oracle9i Lite SQLリファレンス, リリース5.0.1 (ページ 39-45)

6. AND 7. OR

1.8 式の指定 式の指定 式の指定 式の指定

式の指定

式の指定

例 例例 例 emp-ename

'this is a text string' 10

1.8.2 書式 書式 書式 書式 II 、ファンクション表記法 、ファンクション表記法 、ファンクション表記法 、ファンクション表記法

組込みファンクション表記法は、単一行SQL関数へのコールを指定します。

図図図

図 1-10 ファンクション表記法ファンクション表記法ファンクション表記法ファンクション表記法

BNF表記法表記法表記法表記法

function ["(" [DISTINCT | ALL] expr [, expr]...")"] ; 有効な組込みファンクション表記法の例は、次のとおりです。

LENGTH('BLAKE') ROUND(1234.567*43) SYSDATE

1.8.3 書式 書式 書式 書式 III 、 、 、 、 Java 関数式 関数式 関数式 関数式

java_function_name (expr , expr...)

schema.table.java_function_name (expr , expr...)

Java関数の使用方法の詳細は、『Oracle9i Lite Java 開発者ガイド』を参照してください。

1.8.4 書式 書式 書式 書式 IV 、複合式 、複合式 、複合式 、複合式

複合式は、他の式の組合せを指定します。

式の指定

図図図

図 1-11 複合式複合式複合式複合式

BNF表記法表記法表記法表記法 { "(" expr ")"

| { + | - } expr | PRIOR column

| expr( * | / | + | - | ||) expr }

;

関数の組合せの中には、不適当で拒否されるものがあります。たとえば、LENGTH関数は 集計関数内では不適当です。

例 例例 例

('CLARK' || 'SMITH') LENGTH('MOOSE') * 57 SQRT(144) + 72

my_fun(TO_CHAR(sysdate,'DD-MM-YY'))

1.8.5 書式 書式 書式 書式 V、 、 、 、DECODE 式 式 式 式

DECODE式には、特別なDECODE構文を使用します。

図 図図

図 1-12 DECODE式式式式

式の指定

BNF表記法表記法表記法表記法

DECODE "(" expr "," search "," result [, search "," result]... [, default] ")" ; この式を評価するために、Oracle Liteは、expr を各search と1つずつ比較します。expr と等 しいsearchがある場合、Oracle Liteは、対応するresultを返します。一致するものがない

と、Oracle Liteはdefaultを返すか、defaultが省略されている場合、NULLを返します。expr

およびsearchに文字データが含まれている場合、Oracle Liteは、非空白埋め比較を使用し

て、それらを比較します。

searchresultおよびdefault値は、式から導出できます。Oracle Liteは、すべてのsearch値 を評価してからexprと比較するのではなく、exprと比較する直前にのみそれぞれのsearch値 を評価します。したがって、Oracle Liteは、前のsearchexprと等しい場合、searchを評価 しません。

Oracle Liteは、exprと各search値を最初のsearch値のデータ型に自動的に変換してから比較

します。Oracle Liteは、戻り値を最初のresultと同じデータ型に自動変換します。最初の

resultのデータ型がCHAR、あるいは最初のresultがNULLの場合、Oracle Liteは、戻り値 をデータ型VARCHAR2に変換します。

DECODE式の中では、Oracle Liteは、2つのNULL値を等価であるとみなします。expr

NULLの場合、Oracle Liteは、同様にNULLである最初のsearchresultを返します。

exprsearchresultおよびdefaultも含めたDECODE式内のコンポーネントの最大数は、255 です。

例 例例 例

この式は、値DEPTNOをデコードします。この例では、DEPTNOが10の場合、式の評価は 'ACCOUNTING'となります。DEPTNOが10、20、30または40でないと、式は'NONE'を返し ます。

DECODE (deptno,10, 'ACCOUNTING', 20, 'RESEARCH', 30, 'SALES', 40, 'OPERATION', 'NONE')

1.8.6 書式 書式 書式 書式 VI 、式リスト 、式リスト 、式リスト 、式リスト

式リストは、カンマで区切った一連の式です。全体をカッコで囲みます。

図 図図

図 1-13 式リスト式リスト式リスト式リスト

式の指定

BNF表記法表記法表記法表記法

"("[ expr [, expr]...] ")"

1.8.7 書式 書式 書式 書式 VII、変数式 、変数式 、変数式 、変数式

変数式は、オプションの標識変数を持ったホスト変数を指定します。この書式の式は、プロ グラム・インタフェースに使用されることがあります。

図 図図

図 1-14 変数式変数式変数式変数式

BNF表記法表記法表記法表記法

":" host_variable [[INDICATOR] ":" indicator_variable]

1.8.8 書式 書式 書式 書式 VIII 、 、 、 、 CAST 式 式 式 式

CAST式は、組込みデータ型またはコレクション型の値を、別の組込み型またはコレクショ ン型の値に変換します。

図 図図

図 1-15 CAST式式式式

BNF表記法表記法表記法表記法

CAST "(" expr AS datatype_name ")"

オペランドの場合、exprは組込みデータ型です。次の表は、どの組込みデータ型が別データ 型へのCAST変換を受け入れるかを示します。(CASTはLONG、LONG RAWまたはLOB データ型をサポートしません。)

表 表表

表 1-8 CAST変換を受け入れる組込みデータ型変換を受け入れる組込みデータ型変換を受け入れる組込みデータ型変換を受け入れる組込みデータ型

式の指定

DATEデータ型は、POLITE.INIファイルに定義したSQLCompatibilityの設定の影響を 受けます。

次のように設定されていると、DATEおよびTIMESTAMPは等価です。

SQLCompatibility=Oracle

次のように設定されていると、DATEおよびTIMESTAMPは等価でありません。

SQLCompatibility=SQL92

POLITE.INIファイルの詳細は、各プラットフォームに対応する開発者ガイドを参照してく

ださい。

NUMERICには、データ型BIGINT、BINARY、BIT、DECIMAL、DOUBLE PRECISION、

FLOAT、INTEGER、NUMBER、NUMERIC、REAL、SMALLINTおよびTINYINTが含ま

れます。

組込みデータ型の例 組込みデータ型の例組込みデータ型の例 組込みデータ型の例

SELECT CAST ('1997-10-22' AS DATE) FROM DUAL;

SELECT * FROM t1 WHERE CAST (ROWID AS CHAR(5)) = '01234';

DATE X X X

TIME X X X

TIMESTAMP X X X X

RAW X X

表 表表

表 1-8 CAST変換を受け入れる組込みデータ型変換を受け入れる組込みデータ型変換を受け入れる組込みデータ型変換を受け入れる組込みデータ型(続き)(続き)(続き)(続き)

変換元 変換元変換元 変換元/ 変換先 変換先変換先 変換先

CHAR、、、、

VARCHAR2 NUMERIC DATE TIME TIMESTAMP RAW

Oracle Lite SQLのデータ型およびリテラル

ドキュメント内 Oracle9i Lite SQLリファレンス, リリース5.0.1 (ページ 39-45)