Darsliklar SQL AND, OR, NOT operatorlari

SQL SQL AND, OR, NOT operatorlari

AND, OR, NOT operatorlariWHERE sharti ichida bir necha shartni birlashtiradigan mantiqiy operatorlar. Ular yordamida “yoshi 25 dan katta VA Toshkentda yashaydigan” kabi murakkab shartlarni yozasiz. Bu operatorlar SQL so’rovlarini aniq va kuchli qiladi.

AND, OR, NOTWHERE shartlarini birlashtiradigan mantiqiy operatorlar. AND — barcha shartlar, OR — kamida bittasi, NOT — shart teskarisi rost bo’lishini talab qiladi.

Boshlang’ich jadval

Quyidagi foydalanuvchilar jadvali bilan ishlaymiz:

id ism yosh shahar
1 Farrux 26 Toshkent
2 Master Sherkulov 30 Toshkent
3 Aziz 22 Samarqand
4 Dilnoza 28 Buxoro

AND — barcha shartlar rost

AND ikkala shart ham rost bo’lgandagina qatorni tanlaydi:

SELECT ism, yosh, shahar FROM foydalanuvchilar
WHERE yosh > 25 AND shahar = 'Toshkent';

Natija:

ism yosh shahar
Farrux 26 Toshkent
Master Sherkulov 30 Toshkent

Faqat yoshi 25 dan katta VA Toshkentda yashaydiganlar tanlandi. Aziz (Samarqand) va Dilnoza (Buxoro) chiqmadi, chunki ikkinchi shart bajarilmadi.

OR — kamida bitta shart rost

OR shartlardan kamida bittasi rost bo’lsa qatorni tanlaydi:

SELECT ism, shahar FROM foydalanuvchilar
WHERE shahar = 'Samarqand' OR shahar = 'Buxoro';

Natija:

ism shahar
Aziz Samarqand
Dilnoza Buxoro

Shahri Samarqand YOKI Buxoro bo’lganlar tanlandi. Bu bir necha variantdan birortasiga mos qatorlarni olishda foydali.

NOT — shartni teskarisiga

NOT shartni teskarisiga o’giradi — ya’ni shartga mos kelmaydigan qatorlarni tanlaydi:

SELECT ism, shahar FROM foydalanuvchilar
WHERE NOT shahar = 'Toshkent';

Natija:

ism shahar
Aziz Samarqand
Dilnoza Buxoro

Shahri Toshkent bo’lmaganlar tanlandi. NOT “bundan tashqari” degan ma’noni beradi.

Operatorlarni birlashtirish

Bir necha operatorni birga ishlatish mumkin. Qavslar aniqlikni ta’minlaydi:

SELECT ism, yosh, shahar FROM foydalanuvchilar
WHERE (shahar = 'Toshkent' OR shahar = 'Buxoro')
AND yosh > 25;

Natija:

ism yosh shahar
Farrux 26 Toshkent
Master Sherkulov 30 Toshkent
Dilnoza 28 Buxoro

Qavs ichidagi OR avval bajarildi (Toshkent yoki Buxoro), so’ng AND bilan yosh sharti qo’shildi. Aynan matematikadagi kabi, qavslar amal tartibini belgilaydi.

Xulosa

Bu bo’limda AND (barcha shart), OR (kamida bitta), NOT (teskari) operatorlarini va ularni qavs bilan birlashtirishni ko’rib chiqdik. Bu operatorlar murakkab shartlar qurishning asosidir. Keyingi darsda ma’lumotlarni filtrlash — ORDER BY va LIMIT ga o’tamiz.