SQL 比較条件、比較演算子
単純比較の条件述語: SQL における WHERE、START WITH、CONNECT BY、HAVING で使用するオペレーター(演算子)
⇒ グループ比較条件、 LIKE、IN、BETWEEN AND、IS NULL 比較
演算子 | 内容 |
= | 等しい |
<> != ^= ¬= | 等しくない ¬= は、あまり一般的でないプラットフォーム向け <> は標準SQLに規定されている不等号 |
> < | (左辺が)より大きい、より小さい |
>= <= | (左辺が)以上、以下 |
単純比較条件
単純比較条件は、2つの式、または、値を比較する単純比較は 表1 の演算子を利用できる。⇔ グループ比較条件
単純比較条件の例(等号の場合)
SQL> select 1 from dual where 1 = 1;
1
----------
1
リストによる単純比較
リスト、または、式リストの場合(右辺に1レコードのみ戻すサブクエリーを指定する必要がある)
リストにおいて単純比較で使用できるのは等号および不等号のみ。大小関係を比較する場合には グループ比較条件 を使用する。
SQL> select 1 from dual where (1,0) = (select 1,0 from dual);
1
----------
1
使用できない用法
SQL> select 1 from dual where (1,0) = (1,1);
select 1 from dual where (1,0) = (1,1)
*
行1でエラーが発生しました。:
ORA-00920: 関係演算子が無効です。
SQL> select 1 from dual where (select 1,1 from dual) = (1,1);
select 1 from dual where (select 1,1 from dual) = (1,1)
*
行1でエラーが発生しました。:
ORA-00936: 式がありません。
SQL> select 1 from dual where (select 1,0 from dual) = (select 1,0 from dual);
select 1 from dual where (select 1,0 from dual) = (select 1,0 from dual)
*
行1でエラーが発生しました。:
ORA-00913: 値の個数が多すぎます。
比較条件に関連する内容