400 MySQL - Technische Referenz f¨ur Version 5.0.1-alpha
• Ansonsten wird ein Fließkommazahlenvergleich durchgef¨uhrt.
mysql> select 1 BETWEEN 2 AND 3;
-> 0
mysql> select ’b’ BETWEEN ’a’ AND ’c’;
-> 1
mysql> select 2 BETWEEN 2 AND ’3’;
-> 1
mysql> select 2 BETWEEN 2 AND ’x-3’;
-> 0
ausdruck IN (wert,...)
Gibt 1 zur¨uck, wenn ausdruck einen Wert hat, der in der IN-Liste enthalten
ist, ansonsten 0. Wenn alle Werte Konstanten sind, werden alle Werte
gem¨aß dem Typ von ausdruck ausgewertet und sortiert. Danach wird ein
Element mittels bin¨arer Suche gesucht. Das heißt, dass IN sehr schnell
ist, wenn die IN-Werteliste ausschließlich aus Konstanten besteht. Wenn
ausdruck ein Zeichenketten-Ausdruck mit Ber¨ucksichtigung der Groß-
/Kleinschreibung ist, wird der Zeichenkettenvergleich unter Ber¨ucksichtigung
der Groß-/Kleinschreibung durchgef¨uhrt:
mysql> select 2 IN (0,3,5,’wefwf’);
-> 0
mysql> select ’wefwf’ IN (0,3,5,’wefwf’);
-> 1
ausdruck NOT IN (wert,...)
Dasselbe wie NOT (ausdruck IN (wert,...)).
ISNULL(ausdruck)
Wenn ausdruck NULL ist, gibt ISNULL() 1 zur¨uck, ansonsten 0:
mysql> select ISNULL(1+1);
-> 0
mysql> select ISNULL(1/0);
-> 1
Beachten Sie, dass ein Vergleich von NULL-Werten mit = immer UNWAHR
ergibt!
COALESCE(liste)
Gibt das erste Nicht-NULL-Element in der Liste zur¨uck:
mysql> select COALESCE(NULL,1);
-> 1
mysql> select COALESCE(NULL,NULL,NULL);
-> NULL
INTERVAL(N,N1,N2,N3,...)
Gibt 0 zur¨uck, wenn N < N1, 1, wenn N < N2 usw. Alle Argumente werden
als Ganzzahlen behandelt. Es ist erforderlich, dass N1 < N2 < N3 < ... < Nn
ist, damit diese Funktion korrekt funktioniert. Das liegt daran, dass eine (sehr
schnelle) bin¨are Suche benutzt wird:
Comentarios a estos manuales