15-Laboratoriya mashg`uloti


IN so’rovining inkor shakli NOT IN


Download 0.84 Mb.
bet2/3
Sana14.12.2022
Hajmi0.84 Mb.
#1003331
1   2   3
Bog'liq
3-Laboratoriya

IN so’rovining inkor shakli NOT IN yordamida “Paxtakor” va “Nasaf” da o’ynamaydigan o’yinchilar ro’yhatini chiqaramiz:


Kelesi teoriyalıq tүsiniklerimizdiӊ tiykarg’ı bөlimi “Like” operatorına bag’ıshlanadı. Bul arqalı sorao’lardı belgili bir shablon arqalı qurıo’ıӊız mүmkin boladı. Hәzirge shekem biz үyrengen sorao’lar anıqlıq tiykarında dүzildi hәm bir hәripke adasıp sorao’ dүzip qoysaӊız, kerekli mag’lıo’matlardı alıo’g’a qıynalıo’ıӊız anıq.  Bul laboratoriyalıq jumısta tөmendegi “test” atasındag’ı kesteni paydalanamız.



Eger siz qandayda bir “x” bag’anadag’ı mag’lıo’mat boyınsha qalg’an bag’anadag’ı mag’lıo’matlardı shıg’armaqshı bolsaӊız hәm “x” bag’anadag’ı mag’lıo’mattıӊ atın tolıq bilmeseӊiz, “like” operatorınan paydalanıo’ sizge jeӊillik jaratadı. Demek, teoriyadan әmeliyatqa өtemiz, mısal...
test” kestesindegi “ism” bag’anasındag’ı ma’lumotlar ichidan “S” harfidan boshlanadigan ismlarning to’liq ismini hәm familiyasini chiqaruvchi so’rov tuzish kerak:
select ism, yosh, familiya from test where ism like 'S%';

Bu erda “like” kalit so’zidan keyin, biror shablon beriladi, “%” belgisi nol yoki bir necha simvol degan ma’noni beradi, bundan kelib chiqadiki so’rovda, “Sharfidan boshlanuvchi, bu harfdan keyin istalgancha simvol bo’lishi mumkin yoki umuman bo’lmasligi ham mumkin.
Keyingi misol , “ism” ustunidagi ma’lumot “P” harfidan boshlanishi hәm bu harfdan keyin aniq 4 ta simvol bo’lishi kerak(4 tadan ko’p ham emas kam ham emas), shu shart asosida “ism” hәm “maosh” ustunlarini chiqaruvchi so’rov tuzish lozim:
select ism, maosh from test where ism like 'P____';

_” belgi faqat bitta simvol mavjud degani, chunarliki, “____” ketma-ketlik 4 ta simvol degani.
YUqorida keltirilgan belgilarni(“%”,”_”) aralash holda ham ishlatish mumkin. Misol, “familiya” ustunidagi ma’lumotlar ichidan , 2 chi simvol “e” dan iborat bo’lgan hәm bu simvoldan keyin istalgancha simvol bo’lgan familiyani to’liq holda chiqaruvchi so’rov quyidagicha boladı:
select familiya from test where familiya like ‘_e%’;

Keyingi misol, agar ma’lumotlar ichida biz beradigan belgilardan biri (%, _) simvol shaklida ishlatilayotgan bo’lsa, bu simvolni shablon berishda, bu ko’rinish belgi emas balki simvolligini ko’rsatib o’tishimiz zarur. Buni ko’rsatish uchun “escape” kalit so’zidan foydalanishimiz mumkin boladı. Tushunarli bo’lishi uchun misol ko’ramiz, Istalgancha simvol, keyin “n” harfi hәm “_” simvoli uchragan familiyani chiqarish so’rovi
select * from test where familiya like '%n$_' escape '$';

Escape” kalit so’zidan keyin, “_” belgisini simvol ekanini ajratib ko’rsatuvchi belgi yoziladi. Bu misolda ajratuvchi belgi vazifasini “$” belgisi bajarmoqda. “$” belgisini o’rniga istalgan belgini yozish mumkin, faqat shu belgini “escape” kalit so’zidan so’ng ham yozish darkor.
Likeoperatorini yakunlab, keyingi operatorlarga o’tamiz.
Bir necha shartlarni birlashtiruvchi mantiqiy operatorlarni boshlaymiz. Bu operatorlar “where” operatoridan keyin keladigan shartlarni mantiqiy tomondan birlashtirib beradi. Mantiqiy amallarda 2 ta tushuncha mavjud, bular: rost(true)hәm yolg’on(false). Barcha shartning natijasi yoki rost yoki yolg’on bo’lishi mumkin. SHu natijaga qarab mantiqiy amallar ishlatiladi. Bu mantiqiy amallar 3 hildir.

Download 0.84 Mb.

Do'stlaringiz bilan baham:
1   2   3




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling