A null értékekkel végzett munka null, és nem nulla - a lekérdező nyelv sql
NULL érték
Gyakran vannak olyan esetek, amikor a táblákban rekordok láthatók a mezők bármelyik nem meghatározott értékével, mert a mező értéke ismeretlen, vagy egyszerűen nem létezik. Ilyen esetekben az SQL lehetővé teszi, hogy megadja a NULL értéket a mezőben. Szigorúan a NULL-érték egyáltalán nem szerepel a mezőben. Amikor a mező értéke NULL, ez azt jelenti, hogy az adatbázis-program a mezőt különleges módon jelöli, mivel az nem tartalmazza az adott sor (rekord) értékét. Nem ez a helyzet a "nulla" vagy a "gap" érték mezőjének egyszerű hozzárendelése esetén, amelyet az adatbázis bármely más értékként kezel. Mivel a NULL nem önmagában érték, nem rendelkezik adattípussal. A NULL bármilyen típusú mezőbe elhelyezhető. A NULL, mint NULL értéket azonban gyakran használják az SQL-ben.
Tegyük fel, hogy volt olyan vevő, aki még nem nevezett ki eladónak. Ezt a tényt meg kell adnia a mezőben a NULL értéket, és a reális értéket, hogy később is szerepeljen, amikor a vevő az eladóhoz kerül.
Mivel a NULL rögzíti a hiányzó értékeket, a NULL értékekkel való összehasonlítás eredménye nem ismert. Ha NULL értéket hasonlít össze bármely értékkel, még NULL értékkel is, az eredmény egyszerűen nem ismert. Egy logikai érték „ismeretlen” viselkedik, mint egy „hamis” - egy húr, amelyen az alapul veszi az értéket „ismeretlen” nem szerepel a lekérdezés eredmény - egyetlen fontos kivétellel: nem a hazugság igaz (NOT (hamis) = true), míg az ismeretlen értékből származó ismeretlen érték ismeretlen érték. Ezért olyan kifejezés, mint a "city = NULL" vagy "city IN (NULL)", ismeretlen a város értékétől függetlenül.
Gyakran meg kell különböztetni a hamis és ismeretlen karakterláncokat, amelyek olyan oszlopértékeket tartalmaznak, amelyek nem felelnek meg a predikátumnak és a NULL-t tartalmazó karakterláncoknak. Ebből a célból az SQL egy speciális IS operátorral rendelkezik, amelyet a NULL kulcsszóval használnak a NULL érték lokalizálására.
Az SQL NULL. Egy példa.
Készítsen ki minden olyan mezőt az Ügyfelek tehetségéből, amelynek városi mezői NULL:
VÁLASZT * AZ ügyfelektől ahol a város NULL
Ebben az esetben nem lesz kimeneti adat, mert a város mezőben nincsenek NULL értékek.
NINCS NULL
Az NEM NULL feltétel a lekérdezésekben használható olyan rekordok lekéréséhez, amelyek nem azonosak a NULL értékekkel
Az SQL NINCS NULL. Egy példa.
Minden mezőt ki kell tölteni az Ügyfelek tehetségéből, amelynek a város mező értéke nem NULL:
VÁLASZT * AZ ügyfelektől ahol a város NEM NULL