Skip to main content

A NULL értékek meghatározása és helyes használata

Minecraft: Minden, amit a Legendákról tudni kell! (Június 2026)

Minecraft: Minden, amit a Legendákról tudni kell! (Június 2026)
Anonim

Az adatbázisok világába új felhasználókat gyakran összekeverik egy speciális, a mezőhöz tartozó érték - a NULL érték. Ez az érték egy olyan mezőben található, amely bármilyen típusú adatot tartalmaz, és nagyon különleges jelentése van egy relációs adatbázis összefüggésében. Valószínűleg a legjobb, ha megkezdjük NULL beszélgetésünket néhány szóval arról, hogy mi a NULL nem :

  • A NULL nem a nulla szám.
  • A NULL nem az üres karakterlánc ("").

    Inkább a NULL az az érték, amelyet egy ismeretlen adat megjelenítésére használnak. Az adatbázis-programozók gyakran használják a "NULL érték" kifejezést, de ez helytelen. Ne feledje: a NULL egy ismeretlen érték, amelyben a mező üresen jelenik meg.

    NULL a valós világban

    Vessünk egy egyszerű példát: egy asztalt, amely a gyümölcskosár készletét tartalmazza. Tegyük fel, hogy készletünk 10 almát és 3 narancsot tartalmaz. Szilvákkal is foglalkozunk, de készletinformációink hiányosak és nem tudjuk, hány (ha van) szilva van raktáron. A NULL érték használatával a lenti táblázatot az alábbi táblázat mutatja.

    Fruit Stand Inventory

    InventoryIDTételMennyiség
    1Almák10
    2narancs3
    3szilvaNULLA

    Nyilvánvalóan téves, ha 0-as mennyiséget tartalmaz a szilvarekordhoz, mert ez azt jelentené, hogy voltunk nem szilva a készletben. Ellenkezőleg, lehet, hogy van néhány szilva, de nem vagyunk biztosak.

    NULL vagy NULL?

    Egy táblázatot úgy tervezhetünk, hogy megengedjük a NULL értékeket vagy sem.

    Itt van egy SQL példa, amely létrehoz egy Inventory táblát, amely lehetővé teszi néhány NULL-t:

    SQL CREATE TABLE INVENTORY (Leltárazonosító INT NOT NULL, VARCHAR elem (20) NOT NULL, mennyiség INT);

    A Készlet táblázat itt nem engedélyezi a NULL értékeket a InventoryID és a Tétel oszlopokat, de nem teszi lehetővé őket Mennyiség oszlop.

    Bár a NULL érték tökéletesen finom, a NULL értékek problémákat okozhatnak, mivel minden olyan érték összehasonlítása, amelyben az egyik NULL, mindig NULL eredményt eredményez.

    Annak ellenőrzéséhez, hogy a táblázatban NULL-értékeket tartalmaz-e, használja az IS NULL vagy IS NOT NULL operátort. Íme egy példa IS NULL:

    SQL SELECT INVENTORYID, ITEM, QUANTITY FROM INVENTORY, ahol a MENNYISÉG NEM NULL;

    Tekintettel a példánkra, ez visszatér:

    InventoryIDTételMennyiség
    3szilva

    Működés NULL-okon

    A NULL értékekkel való munka gyakran NULL eredményt ad, az SQL művelettől függően. Például, feltételezve, hogy A NULL:

    Számtani operátorok

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

    Összehasonlító operátorok

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

    Ezek csak néhány példát jelentenek az üzemeltetők számára mindig visszaadja a NULL értéket, ha az egyik operandus NULL. Sokkal összetettebb lekérdezések léteznek, és mindegyiket bonyolítja a NULL értékek. A lead home point az, hogy ha engedélyezi a NULL értékeket az adatbázisban, akkor érti meg a következményeket, és tervezze őket.

    Ez NULL a dióhéjban!