value1 = value2 | 等しい SELECT 1 = 0 : false
SELECT 4 = 4 : true
|
value1 <> value2 | 等しくない SELECT 1 <> 0 : true
SELECT 4 <> 4 : false
|
value1 > value2 | より大きい SELECT 1 > 0 : true
SELECT 4 > 4 : false
|
value1 >= value2 | 以上 SELECT 1 >= 0 : true
SELECT 4 >= 4 : true
|
value1 < value2 | より小さい SELECT 1 < 0 : false
SELECT 4 < 4 : false
|
value1 <= value2 | 以下 SELECT 1 <= 0 : false
SELECT 4 <= 4 : true
|
value IS NULL | 値が null かどうか SELECT 1 IS NULL : false
SELECT NULL IS NULL : true
|
value IS NOT NULL | 値が null でないかどうか SELECT 1 IS NOT NULL : true
SELECT NULL IS NOT NULL : false
|
value1 IS DISTINCT FROM value2 | 2 つの値が等しくないかどうか (null 値を同じものとして扱う) SELECT 1 IS DISTINCT FROM 1 : false
SELECT 1 IS DISTINCT FROM 4 : true
SELECT 1 IS DISTINCT FROM NULL : true
SELECT NULL IS DISTINCT FROM NULL : false
|
value1 IS NOT DISTINCT FROM value2 | 2 つの値が等しいかどうか (null 値を同じものとして扱う) SELECT 1 IS NOT DISTINCT FROM 1 : true
SELECT 1 IS NOT DISTINCT FROM 4 : false
SELECT 1 IS NOT DISTINCT FROM NULL : false
SELECT NULL IS NOT DISTINCT FROM NULL : true
|
value1 BETWEEN value2 AND value3 | value1 が value2 以上、かつ value3 以下かどうか SELECT 4 BETWEEN 3 AND 10 : true
SELECT 1 BETWEEN 3 AND 10 : false
|
value1 NOT BETWEEN value2 AND value3 | value1 が value2 以上、かつ value3 以下かどうか SELECT 4 NOT BETWEEN 3 AND 10 : false
SELECT 1 NOT BETWEEN 3 AND 10 : true
|
string1 LIKE string2 | string1 がパターン string2 と一致するかどうか。ワイルドカード '%' は、0 個、1 個、または複数の文字を表します。ワイルドカード '_' は 単一文字を表します。エスケープ文字を定義するには、'ESCAPE' を使用します (ワイルドカードをエスケープする場合)。string1 がシーケンスで始まるかどうかを確認するには、パターン 'sequence%' を使用します (同様に、シーケンスで終わる場合は '%sequence' を使用)。照合では大文字と小文字が区別されます。大文字と小文字を区別しない照合を実行するには、string1 と pattern で UPPER (または LOWER) を使用します。 SELECT name FROM employee WHERE name LIKE 'S%' : Smith, Saunders
SELECT name FROM employee WHERE UPPER(name) LIKE 'SM%' : Smith
SELECT name FROM employee WHERE name LIKE '_m%' : Smith
SELECT 'abcd%' LIKE '%!%' ESCAPE '!' : true
|
string1 NOT LIKE string2 | string1 がパターン string2 と一致しないかどうか。ワイルドカード '%' は、0 個、1 個、または複数の文字を表します。ワイルドカード '_' は単一文字を表します。エスケープ文字を定義するには、'ESCAPE' を使用します (ワイルドカードをエスケープする場合)。string1 がシーケンスで始まらないかどうかを確認するには、パターン 'sequence%' を使用します (同様に、シーケンスで終わらない場合は '%sequence' を使用)。照合では大文字と小文字が区別されます。大文字と小文字を区別しない照合を実行するには、string1 と pattern で UPPER (または LOWER) を使用します。 SELECT name FROM employee WHERE name NOT LIKE 'S%' : Hamilton
SELECT name FROM employee WHERE UPPER(name) NOT LIKE 'SM%' : Hamilton, Saunders
SELECT name FROM employee WHERE name NOT LIKE '_m%' : Hamilton, Saunders
SELECT 'abcd%' NOT LIKE '%!_' ESCAPE '!' : true
|
value IN (value [, value]*) | 値がリスト内の値と等しいかどうか SELECT firstname FROM employee WHERE name IN ('Smith', 'Hamilton') : John, Maria
|
value NOT IN (value [, value]*) | 値がリスト内のすべての値と等しくないかどうか SELECT firstname FROM employee WHERE name NOT IN ('Smith', 'Hamilton') : Jennifer
|
value IN (sub-query) | 値がサブクエリによって返される行と等しいかどうか SELECT e.firstname FROM employee e WHERE e.department.id IN (SELECT d.id FROM department d WHERE d.name='IT') : John
|