159. NULL: uch qiymatli mantiq tuzog'i
QiyinBonusi 100 ga teng bo'lmagan xodimlarni toping — bonusi **umuman
qo'yilmaganlar** (NULL) ham shu ro'yxatga kirishi kerak.
⚠️ WHERE bonus <> 100 deb yozsangiz, NULL li qatorlar **jimgina
yo'qoladi**. Sabab: NULL <> 100 TRUE ham, FALSE ham emas —
u UNKNOWN, WHERE esa faqat TRUE bo'lgan qatorlarni o'tkazadi.
Ikki yechim bor:
WHERE bonus IS DISTINCT FROM 100 -- NULL ni ham "farq qiladi" deb sanaydi
WHERE bonus <> 100 OR bonus IS NULL -- yoki shartni ochiq yozishUstunlar: id, name, bonus.
Saralash: id o'sish.
employees: id INT PK, name VARCHAR, bonus INT NULL
Namuna ma'lumotlar
sample
employees
| idINT | nameVARCHAR(60) | bonusINT |
|---|---|---|
| 1 | Aziz Karimov | 100 |
| 2 | Malika Yusupova | NULL |
| 3 | Bekzod Rahimov | 250 |
Kutilgan natija
| id | name | bonus |
|---|---|---|
| 2 | Malika Yusupova | NULL |
| 3 | Bekzod Rahimov | 250 |
sample-full
employees
| idINT | nameVARCHAR(60) | bonusINT |
|---|---|---|
| 1 | Aziz Karimov | 100 |
| 2 | Malika Yusupova | NULL |
| 3 | Bekzod Rahimov | 250 |
| 4 | Nilufar Karimova | 100 |
| 5 | Jasur Abdullayev | NULL |
| 6 | Dilnoza Toshpulatova | 0 |
| 7 | Sardor Rahimov | 50 |
| 8 | Zilola Ergasheva | NULL |
| 9 | Otabek Nazarov | 100 |
| 10 | Kamola Abdullayeva | 300 |
| 11 | Shahzod Yusupov | NULL |
| 12 | Gulnora Nazarova | 75 |
| 13 | Farrux Karimov | 100 |
| 14 | Aziza Sobirova | 120 |
Kutilgan natija
| id | name | bonus |
|---|---|---|
| 2 | Malika Yusupova | NULL |
| 3 | Bekzod Rahimov | 250 |
| 5 | Jasur Abdullayev | NULL |
| 6 | Dilnoza Toshpulatova | 0 |
| 7 | Sardor Rahimov | 50 |
| 8 | Zilola Ergasheva | NULL |
| 10 | Kamola Abdullayeva | 300 |
| 11 | Shahzod Yusupov | NULL |
| 12 | Gulnora Nazarova | 75 |
| 14 | Aziza Sobirova | 120 |
sample-extra
employees
| idINT | nameVARCHAR(60) | bonusINT |
|---|---|---|
| 5 | Islom Xolmatov | 221 |
| 8 | Umida Abdullayeva | 100 |
| 2 | Eldor Tursunov | 100 |
| 1 | Sherzod Sobirov | 221 |
| 7 | Komil Raxmonov | 221 |
| 4 | Otabek Fayzullayev | 100 |
Kutilgan natija
| id | name | bonus |
|---|---|---|
| 1 | Sherzod Sobirov | 221 |
| 5 | Islom Xolmatov | 221 |
| 7 | Komil Raxmonov | 221 |
O'xshash masalalar
Konsol
Natijani ko'rish uchun so'rovni ishga tushiring.
