比較条件
比較条件は、比較演算子を使用して2つの式を比較します。最初の式が2番目の式と、比較演算子で指定したとおりの関係である場合に、条件はTRUEと評価されます。
SQL構文
RowValueConstructorCompOpRowValueConstructor2
RowValueConstructorの構文は、次のとおりです。
RowValueConstructorElement| (RowValueConstructorList) |ScalarSubquery
RowValueConstructorListの構文は、次のとおりです。
RowValueConstructorElement[{,RowValueConstructorElement} ... ]
RowValueConstructor2 (1つの式)の構文は、次のとおりです。
Expression
RowValueConstructor2 (式のリスト)の構文は、次のとおりです。
((Expression[,...]))
CompOpの構文は、次のとおりです。
{= | <> | > | >= | < | <= }パラメータ
説明
-
すべての文字データ型は、
NLS_SORTセッション・パラメータの現在の値に従って比較されます。 -
RowValueConstructorListが指定されている場合は、演算子=および<>のみを使用できます。 -
TimesTenで互換性のある異なるデータ型の値が比較される方法については、「数値データ型」を参照してください。
-
比較条件の片方の辺が
UNKNOWNまたはNULLと評価された場合、これは条件および条件の否定のいずれもTRUEではないことを意味します。 -
NULL値自体は演算子または条件のオペランドとして直接使用できます。たとえば、
(1 = NULL)比較がサポートされます。これは、(1 = CAST(NULL AS INT))のように、NULLを適切なデータ型にキャストする場合と同じです。両方の方法がサポートされ、同じ結果を返します。
例
20日未満の期間で配送する必要のある部品の番号を検索します。
SELECT PartNumber FROM Purchasing.SupplyPrice WHERE DeliveryDays < 20;
この問合せは、salary=9500かつcommission_pct=.25である従業員のlast_nameを返します。
ノート:
等号の右側の式は、二重カッコ(( ))で囲む必要があります。
Command> SELECT last_name FROM employees
WHERE(salary,commission_pct) = ((9500,.25));
< Bernstein >
1 row found.
この問合せは、manager_id = 205である従業員のlast_nameを返します。従業員のdepartment_idおよびmanager_idは、employeesとdepartmentsの両方の表に格納されています。departments表から情報を抽出するには、副問合せを使用します。
Command> SELECT last_name FROM employees
WHERE (department_id, manager_id) =
(SELECT department_id, manager_id FROM departments
WHERE manager_id = 205);
< Gietz >
1 row found.