Skip to main content

WIE MAN: Definition und korrekte Verwendung von NULL-Werten - 2021

But what is a Neural Network? | Deep learning, chapter 1 (Oktober 2021).

But what is a Neural Network? | Deep learning, chapter 1 (Oktober 2021).
Anonim

Benutzer, die sich in der Welt der Datenbanken noch nicht auskennen, werden oft durch einen speziellen Wert des Feldes - den NULL-Wert - verwirrt. Dieser Wert kann in einem Feld mit beliebigen Datentypen gefunden werden und hat im Kontext einer relationalen Datenbank eine besondere Bedeutung. Es ist wahrscheinlich am besten, unsere Diskussion über NULL mit ein paar Worten darüber zu beginnen, was NULL ist nicht :

  • NULL ist nicht die Zahl Null.
  • NULL ist nicht der leere String (“”).

    Vielmehr ist NULL der Wert, der zur Darstellung eines unbekannten Datenelements verwendet wird. Datenbank-Programmierer verwenden häufig den Ausdruck "NULL-Wert", dies ist jedoch falsch. Denken Sie daran: Ein NULL-Wert ist ein unbekannter Wert, bei dem das Feld leer erscheint.

    NULL in der realen Welt

    Schauen wir uns ein einfaches Beispiel an: eine Tabelle mit dem Inventar für einen Obststand. Angenommen, unser Bestand enthält 10 Äpfel und drei Orangen. Wir haben auch Pflaumen auf Lager, aber unsere Bestandsinformationen sind unvollständig und wir wissen nicht, wie viele (oder welche) Pflaumen auf Lager sind. Wenn Sie den NULL-Wert verwenden, wird die in der nachstehenden Tabelle dargestellte Inventartabelle angezeigt.

    Obststand Inventar

    InventoryIDArtikelMenge
    1Äpfel10
    2Orangen3
    3PflaumenNULL

    Es wäre eindeutig falsch, eine Menge von 0 für die Pflaumenaufzeichnung anzugeben, da dies bedeuten würde, dass wir dies hatten Nein Pflaumen im Inventar. Im Gegenteil, wir haben vielleicht Pflaumen, aber wir sind uns einfach nicht sicher.

    Zu NULL oder NICHT NULL?

    Eine Tabelle kann entworfen werden, um entweder NULL-Werte zuzulassen oder nicht.

    Hier ist ein SQL-Beispiel, das eine Inventartabelle erstellt, die einige NULL-Werte zulässt:

    SQL> CREATE TABLE INVENTORY (InventoryID INT NICHT NULL, Element VARCHAR (20) NOT NULL, Menge INT);

    Die Inventartabelle erlaubt hier keine NULL-Werte für InventoryID und das Artikel Spalten, aber erlaubt sie für die Menge Säule.

    Das Zulassen eines NULL-Werts ist zwar vollkommen in Ordnung, NULL-Werte können jedoch zu Problemen führen, da ein Vergleich von Werten, bei denen einer NULL ist, immer NULL ergibt.

    Um zu überprüfen, ob Ihre Tabelle NULL-Werte enthält, verwenden Sie den Operator IS NULL oder IS NOT NULL. Hier ist ein Beispiel von IS NULL:

    SQL> SELECT INVENTORYID, ARTIKEL, MENGE AUS INVENTUR, WENN MENGE NICHT NULL IST;

    In unserem Beispiel hier würde dies zurückkehren:

    InventoryIDArtikelMenge
    3Pflaumen

    Betrieb mit NULL-Werten

    Das Arbeiten mit NULL-Werten führt abhängig von der SQL-Operation häufig zu NULL-Ergebnissen. Angenommen, A ist NULL:

    Rechenzeichen

    • A + B = NULL
    • A - B = NULL
    • A * B = NULL
    • A / B = NULL

    Vergleichsoperatoren

    • A = B = NULL
    • A! = B = NULL
    • A> B = NULL
    • A! <B = NULL

    Dies sind nur einige Beispiele für Operatoren, die dies tun werden immer NULL zurückgeben, wenn ein Operand NULL ist. Es gibt viel komplexere Abfragen, und alle werden durch NULL-Werte kompliziert. Wenn Sie NULL-Werte in Ihrer Datenbank zulassen, sollten Sie die Auswirkungen verstehen und planen.

    Das ist NULL in aller Kürze!