- Kategorien:
[ NOT ] BETWEEN¶
Gibt TRUE
zurück, wenn sich der Eingabeausdruck (numerisch oder Zeichenfolge) innerhalb der angegebenen unteren und oberen Grenzen befindet.
Syntax¶
<expr> [ NOT ] BETWEEN <lower_bound> AND <upper_bound>
Nutzungshinweise¶
expr BETWEEN lower_bound AND upper_bound
ist äquivalent zuexpr >= lower_bound AND expr <= upper_bound
.Die angegebene obere Grenze muss größer als die untere Grenze sein.
Sortierungsdetails¶
Der Ausdruck A BETWEEN X AND Y
ist äquivalent zu A >= X AND A <= Y
. Die für den Vergleich mit X
und Y
verwendeten Sortierungen sind unabhängig und müssen nicht identisch sein, aber beide müssen mit der Sortierung von A
kompatibel sein.
Beispiele¶
Hier sind einige einfache Beispiele für die Verwendung von BETWEEN mit Zahlen- und Zeichenfolgenwerten:
SELECT 'true' WHERE 1 BETWEEN 0 AND 10;
+--------+
| 'TRUE' |
|--------|
| true |
+--------+
SELECT 'true' WHERE 1.35 BETWEEN 1 AND 2;
+--------+
| 'TRUE' |
|--------|
| true |
+--------+
SELECT 'true' WHERE 'the' BETWEEN 'that' AND 'then';
+--------+
| 'TRUE' |
|--------|
| true |
+--------+
Die folgenden Beispiele verwenden COLLATE mit BETWEEN:
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 |
+-------------------------------------------+