Odkrij zahrbtni hrošč z NULL in ga zaobidi
Poizvedba »najdi stranke, ki nimajo nobenega naročila«, izražena z NOT IN, skriva grdo napako: če podpoizvedba vsebuje že eno samo vrstico z NULL, celoten NOT IN tiho vrne nič vrstic — brez napake, brez opozorila. Klasična past trivrednostne logike v jeziku SQL.
Varna enakovredna oblika je NOT EXISTS: vrne vrstico, kadar notranja poizvedba ni našla ničesar, in je odporna na NULL. Prepiši preverjanje »stranke brez naročil« z NOT EXISTS, tako da poizvedba pravilno deluje tudi ob NULL v podatkih. Prikaži identifikator in e-pošto takih strank ter razvrsti po identifikatorju.
Vzorec pričakovanega izhoda
Tako izgleda pravilen odgovor — ima svoje število vrstic in se ni treba ujemati s tabelami sheme.
| id | |
|---|---|
| 3 | новый@email |
Prijavite se za ogled zgodovine oddaj
PrijavaPrijavite se za uporabo mentorja UI
Prijava