Sobes.tech
Middle

Kuidas töötada NULL-iga SQL-is?

sobes.tech AI

Vastus AI-lt

SQL-is tähendab NULL väärtuse puudumist ning sellega tuleb töötada erilise tähelepanuga:

  • Võrdlused NULL-iga: Operaatorid =, <> ei tööta NULL-iga nagu tavalise väärtusega. Näiteks, column = NULL tagastab alati FALSE.

  • NULL-i kontroll: Kasutage IS NULL või IS NOT NULL, et kontrollida väärtuse olemasolu või puudumist.

  • Kogumite funktsioonides: Funktsioonid nagu COUNT(column) ei arvesta NULL-e, samas kui COUNT(*) loeb kõik read.

  • NULL-i asendamise funktsioonid: COALESCE(column, default_value) tagastab esimese mitte-NULL väärtuse nimekirjast.

  • Tabelite ühendamine: JOIN-i ajal võivad read, mille põhiväljad on NULL, mitte sobituda, mis mõjutab tulemust. Näiteks, INNER JOIN välistab sellised read, samas kui LEFT JOIN säilitab need NULL-idega ühendatud väljad.

Näide:

SELECT
  user_id,
  COALESCE(email, 'no-email@example.com') AS email_address
FROM users
WHERE last_login IS NOT NULL;

Siin asendame NULL väärtuse email väljal vaikimisi aadressiga ja valime ainult kasutajad, kellel on teada viimane sisselogimise kuupäev.