SELECT Id, Familiya, Ism, Yunalish, Tugilgan_tuman, Murabbiy, Guruh FROM Talabalar WHERE Tugilgan_tuman =’Oqdaryo’ANDJinsi= 'erkak'
SELECT Id, Familiya, Ism, Yunalish, Tugilgan_tuman, Guruh FROM Talabalar WHERE tugilgan_tuman = 'Narpay' OR Guruh =202
AND va OR operatorlarini birlashtiraylik. Buning uchun Payariqlik 3-kursda o’qiydigan yoki 202-guruhda o’qiydigan talabalarning barchasini tanlab olaylik.
SELECT Id, Familiya, Ism, Yunalish, Tugilgan_tuman, Guruh FROM Talabalar WHERE Guruh = 202 OR Kurs = 3 AND Tugilgan_tuman = 'Payariq'
Yuqoridagi natijada Payariqlik talabalardan tashqari Nurobod, Samarqand, Urgut, Bulung’ur tumanidan ham talabalar aks etgan. Buning sababi SQL buyruqlarning bajarishning ustuvorligi bilan bog‘liq.Ya'ni, AND operatori OR operatoriga qaraganda ustuvor, shuning uchun avval Payariqlik 3-kurs talabalariga tegishli yozuvlari, so'ngra 202-guruh talabalariga tegishli barcha yozuvlar tanlangan.
Shunday qilib, to'g'ri tanlovni olish uchun buyruqni bajarish ustuvorligini bilish kerak. Buni yana ham yaxshiroq tushinish uchun matematikada bo'lgani kabi qavslardan foydalanamiz. Oldin qavslar ichidagi operatorlar, so'ngra qolganlari qayta ishlanadi.
SELECT Id, Familiya, Ism, Yunalish, Tugilgan_tuman, Guruh FROM Talabalar WHERE ( Guruh = 202 OR Kurs = 3 ) AND Tugilgan_tuman = 'Payariq'
4. Kengaytirilgan filtrlash (IN operatori) SELECT Id, Familiya, Ism, Yunalish, Tugilgan_tuman, Guruh FROM Talabalar WHERE ID IN (5, 9, 13, 18, 24)
IN operatori OR operatori funksiyasini bajaradi, lekin bir nechta afzalliklarga ega:
- uzun ro'yxatlar bilan ishlashda IN iborasidan o'qish oson;
- kam operatorlardan foydalaniladi, bu so'rovlarni tezroq ishlashini ta'minlaydi;
- IN ning eng muhim afzalligi shundaki, uning konstruksiyasida qo'shimcha SELECT operatorini ishlatish mumkin, bu murakkab tarkibiy so'rovlarni yaratish uchun katta imkoniyatlar beradi.