SQL エディタでクエリを入力するとき または計算を作成するとき 、Presto SQL 構文 を使用します。値を比較するには、以下の一般的な関数や演算子が便利です。
比較演算子
| 演算子 | 説明 |
|---|---|
< |
より小さい |
> |
より大きい |
<= |
以下 |
>= |
以上 |
= |
イコール |
<>または!= |
同等ではない |
ALL、ANY、SOMEのいずれか
ALL、ANY、SOMEの量化子は、比較演算子とともに次のように使うことができる:
式演算子量化子(サブクエリ)
例:
| エクスプレッション | 以下の場合trueと評価される |
|---|---|
A = すべて(...) |
Aはすべての値に等しい |
A <> ALL (...) |
Aはどの値とも一致しない |
A < ALL (...) |
Aは最小値より小さい |
A = ANY (...) |
Aは任意の値に等しいです。これはA IN (...) と同じである。 |
A <> ANY (...) |
Aが1つ以上の値と一致しない |
A < ANY (...) |
Aは最大値より小さい。 |
メモ: ANY とSOME は同じ意味であり、互換性がある。
<!--BETWEEN or NOT BETWEEN
To test if a value is within a range, use the operator BETWEEN,
such as value
BETWEEN min AND max. For example:
SELECT 3 BETWEEN 2 AND 6;
This statement is equivalent to
SELECT 3 >= 2 AND <= 6;
To test if a value is not within a range, use
NOT BETWEEN.
A NULL in a BETWEEN or NOT BETWEEN statement
results in an evaluation of NULL:
SELECT NULL BETWEEN 2 AND 6; -- null
SELECT NULL NOT BETWEEN 2 AND 6; -- null
You can also use BETWEEN and NOT BETWEEN operators
to evaluate string arguments.
The value, min, and max must all be the
same data type.
IS NULL かつ IS NOT NULL
値が未定義かnullかどうかをテストするには、IS NULLまたはIS NOT NULLを任意のデータ型で使用します。
NULL とIS NULL を併用すると真と評価されるが、他の定数は真と評価されない:
SELECT NULL IS NULL; -- true
SELECT 3 IS NULL; -- false
ライク
文字列中の指定された文字パターンにマッチさせるには、LIKE 演算子を使う。パターンには正規文字とワイルドカード文字の両方を含むことができる。
| ワイルドカード | 代表 |
|---|---|
パーセンテージ記号%. |
0文字、1文字、または複数文字 |
アンダースコア_ |
一文字 |
ワイルドカード文字をエスケープするには、ESCAPE パラメータで指定された文字を使用します:
KE pattern [ ESCAPE 'escape_character' ]
パターン またはescape_character がNULL の場合、式はNULLと評価される。
例:
| 報告書 | 戻り値 |
|---|---|
SELECT * FROM (VALUES ('abc'), ('bcd'), ('cde')) AS t (name) |
'abc'および'bcd' |
SELECT * FROM (VALUES ('abc'), ('bcd'), ('cde')) AS t (name) |
'abc' |
SELECT * FROM (VALUES ('abc'), ('bcd'), ('cde')) AS t (name) |
'bcd' |
SELECT * FROM (VALUES ('abc'), ('bcd'), ('cde')) AS t (name) |
何もない |
SELECT * FROM (VALUES ('abc'), ('bcd'), ('cde')) AS t (name) |
'a_c'および'_cd' |
SELECT * FROM (VALUES ('abc'), ('bcd'), ('cde')) AS t (name) |
'a%c'および'%cd' |