カテゴリ:

条件式関数

[ NOT ] BETWEEN

入力式(数値または文字列)が指定された下限および上限内にある場合、 TRUE を返します。

構文

<expr> [ NOT ] BETWEEN <lower_bound> AND <upper_bound>
Copy

使用上の注意

  • expr BETWEEN lower_bound AND upper_bound は、 expr >= lower_bound AND expr <= upper_bound と同等です。

  • 指定された上限は、下限よりも大きい必要があります。

照合の詳細

A BETWEEN X AND Y は、 A >= X AND A <= Y と同等です。 X および Y との比較に使用される照合は独立しており、同一である必要はありませんが、両方が A の照合と互換性がある必要があります。

以下に、数値と文字列値で BETWEEN を使用する簡単な例をいくつか示します。

SELECT 'true' WHERE 1 BETWEEN 0 AND 10;
+--------+
| 'TRUE' |
|--------|
| true   |
+--------+
Copy
SELECT 'true' WHERE 1.35 BETWEEN 1 AND 2;
+--------+
| 'TRUE' |
|--------|
| true   |
+--------+
Copy
SELECT 'true' WHERE 'the' BETWEEN 'that' AND 'then';
+--------+
| 'TRUE' |
|--------|
| true   |
+--------+
Copy

次の例では、 COLLATEBETWEEN で使用しています。

SELECT 'm' BETWEEN COLLATE('A', 'lower') AND COLLATE('Z', 'lower');
+-------------------------------------------------------------+
| 'M' BETWEEN COLLATE('A', 'LOWER') AND COLLATE('Z', 'LOWER') |
|-------------------------------------------------------------|
| True                                                        |
+-------------------------------------------------------------+
SELECT COLLATE('m', 'upper') BETWEEN 'A' AND 'Z';
+-------------------------------------------+
| COLLATE('M', 'UPPER') BETWEEN 'A' AND 'Z' |
|-------------------------------------------|
| True                                      |
+-------------------------------------------+
Copy