PythonQ 240-8XX Manual de usuario Pagina 663

  • Descarga
  • Añadir a mis manuales
  • Imprimir
  • Pagina
    / 768
  • Tabla de contenidos
  • MARCADORES
  • Valorado. / 5. Basado en revisión del cliente
Vista de pagina 662
642 MySQL - Technische Referenz f¨ur Version 5.0.1-alpha
In SQL ist der NULL-Wert im Vergleich mit jedem anderen Wert immer UNWAHR (false),
selbst im Vergleich mit NULL. Ein Ausdruck, der NULL enth¨alt, erzeugt immer einen NULL-
Wert, ausser wenn es in der Dokumentation der Operatoren und Funktionen, die im Aus-
druck beteiligt sind, anders angegeben ist. Alle Spalten im folgenden Beispiel geben NULL
zur¨uck:
mysql> SELECT NULL,1+NULL,CONCAT(’unsichtbar’,NULL);
Wenn Sie nach Spaltenwerten suchen, die NULL sind, onnen Sie nicht =NULL benutzen.
Folgendes Statement gibt keine Zeilen zur¨uck, weil ausdruck = NULL ur jeden beliebigen
Ausdruck UNWAHR (false) ist:
mysql> SELECT * FROM meine_tabelle WHERE Telefon = NULL;
Um nach NULL-Werten zu suchen, m¨ussen Sie IS NULL benutzen. Folgende Beispiele zeigen,
wie Sie die NULL-Telefonnummer und die leere Telefonnummer finden:
mysql> SELECT * FROM meine_tabelle WHERE Telefon IS NULL;
mysql> SELECT * FROM meine_tabelle WHERE Telefon = "";
In MySQL onnen Sie - wie bei vielen anderen SQL-Servern - keine Spalten indexieren,
die NULL-Werte enthalten d¨urfen. Sie m¨ussen solche Spalten aus NOT NULL deklarieren. Sie
d¨urfen in eine indexierte Spalte keine NULL-Werte einf¨ugen.
Wenn Sie Daten mit LOAD DATA INFILE einlesen, werden leere Spalten mit ’’ aktualisiert.
Wenn Sie einen NULL-Wert in einer Spalte haben wollen, m¨ussen Sie in der Textdatei \N
benutzen. Unter manchen Umst¨anden kann auch das Literalwort ’NULL’ benutzt werden.
Siehe Abschnitt 7.4.9 [LOAD DATA], Seite 448.
Wenn Sie ORDER BY benutzen, werden NULL-Werte zuerst angezeigt. Wenn Sie mit DESC in
absteigender Reihenfolge sortieren, werden NULL-Werte zuletzt angezeigt. Wenn Sie GROUP
BY benutzen, werden alle NULL-Werte als gleich betrachtet.
Um die Handhabung von NULL zu erleichtern, onnen Sie die IS NULL- und IS NOT NULL-
Operatoren und die IFNULL()-Funktion benutzen.
Bei manchen Spaltentyp en werden NULL-Werte besonders behandelt. Wenn Sie NULL in die
erste TIMESTAMP-Spalte einer Tabelle einf¨ugen, werden das aktuelle Datum und die aktuelle
Zeit eingef¨ugt. Wenn Sie NULL in eine AUTO_INCREMENT-Spalte einf¨ugen, wird die achste
Zahl in der Zahlenfolge eingef¨ugt.
A.5.4 Probleme mit alias
Sie onnen ein Alias verwenden, um auf eine Spalte im GROUP BY-, ORDER BY- oder HAVING-
Teil zu verweisen. Aliase onnen auch verwendet werden, um Spalten bessere Namen zu
geben:
SELECT SQRT(a*b) as wurzel FROM tabelle GROUP BY wurzel HAVING wurzel > 0;
SELECT id,COUNT(*) AS zaehl FROM tabelle GROUP BY id HAVING zaehl > 0;
SELECT id AS "kunden-kennung" FROM tabelle;
Beachten Sie, dass ANSI-SQL verbietet, in einer WHERE-Klausel auf ein Alias zu verweisen.
Das liegt daran, dass der Spaltenwert oglicherweise noch nicht feststeht, wenn der WHERE-
Code ausgef¨uhrt wird. Folgende Anfrage zum Beispiel ist unzul¨assig:
SELECT id,COUNT(*) AS zaehl FROM tabelle WHERE zaehl > 0 GROUP BY id;
Vista de pagina 662
1 2 ... 658 659 660 661 662 663 664 665 666 667 668 ... 767 768

Comentarios a estos manuales

Sin comentarios