ヘッダーをスキップ

Oracle TimesTen In-Memory Database APIおよびSQLリファレンス・ガイド リリース6.0 B25770-01 |
| 目次 | 索引

前へ | 次へ |

## 検索条件の一般的な構文

検索条件は、単一の条件、または論理演算子ANDやORによって連結された複数の条件です。条件は、式においてTRUE、FALSE、NULLとして評価される処理です。行に対して条件がTRUEと評価された場合、その行はそれ以降の処理対象になります。条件がFALSEまたはNULLと評価された場合、行は処理対象とはなりません。

SQL構文
[NOT]
{BetweenPredicate | ComparisonPredicate | InPredicate | LikePredicate|
NullPredicate | QuantifiedPredicate |(SearchCondition)}
[ {AND | OR} [NOT]
{BetweenPredicate | ComparisonPredicate |InPredicate | LikePredicate|
NullPredicate | QuantifiedPredicate |(SearchCondition)}
] [...]
パラメータ

NOT、AND、OR | 論理演算子には、次のものがあります。 NOTは、それに続く条件の値を否定します。 ANDで結ばれた2つの条件がTRUEと評価された場合、TRUEと評価されます。 ORで結ばれた条件のいずれか一方がTRUEと評価された場合はTRUEと評価され、いずれもTRUEと評価されない場合はFALSEと評価されます。 条件がNULLと評価された場合の演算子の動作については、「説明」を参照してください。
BetweenPredicate | 式が一定の値の範囲に含まれているかどうかを判断します。たとえば、A BETWEEN B AND CはA >= B AND A<= Cと同じです。
ComparisonPredicate | <、<=、>、>=、=、<>のいずれかの演算子を使用して、2つの式を比較します。
InPredicate | 指定した設定の要素と式が一致するかどうかを判断します。
ExistsPredicate | 副問合せが行を返すかどうかを判断します。
LikePredicate | 特定の文字列パターンが式に含まれているかどうかを判断します。
NullPredicate | 値がNULLであるかどうかを判断します。
QuantifiedPredicate | 指定した設定と式に特定の関係があるかどうかを判断します。
(SearchCondition) | 前述のいずれかの条件をカッコで囲みます。

説明

- 検索条件の条件は、次のように評価されます。

- カッコで囲んだ条件は、最初に評価されます。
- NOTは、各条件に対して適用されます。
- ANDは、右側の条件に、左から右の方向に適用されます。
- ORは、末尾の条件に、左から右の方向に適用されます。

次の図は、論理演算子によって算出される値を示します。疑問符（?）は、NULL値を示します。

#####

#####

#####

- 行の検索条件がNULLと評価された場合、行は検索条件を満たさないため処理対象になりません。
- 互換性のあるデータ型のみを比較できます。

- TINYINT、SMALLINT、INTEGER、BIGINT、DECIMAL、NUMERIC、DOUBLEおよびREALは互換性があります。
- CHAR、VARCHAR、BINARYおよびVARBINARYは、長さにかかわらず互換性があります。
- CHAR、VARCHAR、DATE、TIMEおよびTIMESTAMPは互換性があります。NCHARおよびNVARCHARは互換性があります。

- 比較処理での値の拡張については、「式」を参照してください。
- 型が異なる場合でも互換性のあるデータ型の値をTimesTenがどのように比較するかについては、「TimesTenの数値型」を参照してください。