Texnologiyalari



Yüklə 29,35 Mb.
səhifə132/137
tarix26.07.2023
ölçüsü29,35 Mb.
#137602
1   ...   129   130   131   132   133   134   135   136   137
3.axborot texnologiyalari (m.aripov, b.begalov va b.) (1)

Bu ekranda oylik maoshi 2150—2350 oralig'idan tashqarida bo'lgan xodimlarning ro'yxatini ko'rsatadi.
Is null operatori axborot bo'lmagan satrlami tanlash imkonini beradi.
Misol: Factory jadvalidan telefoni bo'lmagan ishchilar ro'yxatini tanlash.
Select Name, Telno from factory
where Telno. Is null;
Natijada quyidagi jadvalga ega bo'lamiz; Name Telno
Jane S. DonT.
Like oneratori. Like operatori satrli o'zgaruvchilami solishtirishni ta’minlaydi. EHM satrli o'zgaruvchilami shablon bo'yicha solishtiradi. Bu holda satrli o'zgaruvchini solishtirishda shablondan keyin «%» belgisi turadi, o'zgaruvchining o'zi qavs ichida yoziladi.


Misol: Factory jadvalidagi Name ustunida kimning nomi «DO» dan boshlansa, o'shani ekranga chiqarish.
select Name from factory where Name like, 'DO%';
Natijada ekranda quyidagilar hosil bo'ladi:
Name Dolly S. Don T.
Donowan A.
Bu operator satrli kattaliklami alohida harflari aniq bo'lganda tanlashni ta’minlaydi.
Misol uchun:
select Name from factory where Name like «AN%»;
Chizish AN dan oldin har qancha miqdor bo'lish imkoni borligini anglatadi.
Natijada quyidagilar hosil bo'ladi:
Name Bianca A. Jane S. Joan A.
Donovan A.
Bo'limda muhokama qilinadigan eng oxirgi operator In operatori bo'ladi. U tanlov asosida boshqa ma’lumotlarga mos bo'lgan ma’lu­ motlami yig'ish imkonini beradi.
Masalan:
select Name, Dept from factory
where Dept in ('admin', 'account');
Berilgan buyruq asosida EHM factory jadvalidan administrativ (ma’muriy) bo'limda va buxgalteriyada ishlayotgan xodimlaming ro'yxa­ tini keltiradi.
Name Dept
Rustam V. admin
Edwin E. Account Dolly S. Account
I) IV) punktlarda tasvirlangan barcha operatorlar NOT opera­ tori bilan ham ishlashi mumkin;
f ) s h a r t la m i o 'z a ro a lm a s h t ir is h .


Hozirgacha biz jadvaldan ma’lumotlami tanlab olishda faqat bitta shartdan foydalandik. SQL tili bitta iborada ikki yoki undan ortiq shartlarning qo'llanishiga imkon beradi.
Bu holatda shartlar bir-biridan AND yoki OR biriktiruvchi kredit- lar yordamida ajratiladi. Quyida biz shartlarni almashtirishni qo'llash imkoniyatini ko‘rsatadigan ikkita misol keltiramiz.
1-misol. Factory jadvalidan worker bo‘limiga tegishli va staji 10 yildan ortiq bo‘lgan xodimlaming ro'yxatini tanlash.
Select Name, Los, Dept from factory
where Dept—worker’ and Los> 10; Natijada ekranda quyidagilar hosil bo'ladi:
Name Los Dept
Erkin J. 17 worker
PauL T. 1 2 worker
2-misol. Factory jadvalidan 01.01.1960 dan keyin tug'ilgan, oylik maoshi 2050 dan kam yoki 2450 dan ortiq, telefon raqami bor xodim­ laming ro'yxati, tug'ilgan sanasi, oylik maoshi va telefon raqamlarini tanlash.
Select Name, Dob, Salary, Telno from factory
where not between 2050 and 2450 and Dob> 01.01.1960;
Arifmetik operatsiyalar. SQL faqat tanlashni emas, balki ma’lu­ motlar bilan arifmetik amallami bajarishni ham ta’minlaydi.
Masalan:
Select Name, Salary*1.2 from factory
where Dept= ’service’;
Natijada ekranda quyidagilar hosil bo'ladi:
Name Salary* 1.2
Bianca A. 2340
Jane S. 2280
Agar oxirgi ifodada shart bo'lmasa, EHM barcha xodimlaming oy­ lik maoshini 20% ga oshiradi. Shuni aytib o'tish kerakki, factory jadvalining o'zida Bianca A. va Jane S. ning oylik maoshi o'zgarishsiz qoladi. Jadval ma’lumotlarini o'zgartirish uchun maxsus buyruqlar ke­ rak, ular haqida keyinroq suhbatlashamiz. Ma’lumotlar bazasi bilan ishlaganda shu kundagi sana va vaqtni bilish kerak. Shu maqsadda SQLda quyidagi operatorlar nazarda tutilgan.


SYSTIME soat, minut, sekund formatida shu kungi vaqtni belgilaydi.
SYS DATE kun, oy, yil formatida shu kungi sanani belgilaydi. Misol:
Select Name, Sysdate,systime from factory
where Salary = 2700 or Salary =3000 Natijada quyidagiga ega bo'lamiz.
Name Sysdate Systime Rustam B. 14.01.1997. 14.02.27.
Shuningdek, sysdate va systime operatorlari bilan arifmetik operasi- yalarni bajarish mumkin.
Masalan:
Select Name, Sysdate+31 from factory
where Name like 'Rustam%';
Berilgan buyruq asosida, shu kungi sanaga EHM 31 kunni qo‘shib qo‘yadi.
Natijada quyidagilar hosil bo'ladi:
Name Sysdate+31
Rustam B. 14.02.97.
SQL sana va vaqt bilan bo'lgan arifmetik operatsiyalardagi literallar kabi, sana va vaqtning har xil konstantalarini qo'llashga imkon beradi. Shu maqsadda SQL ga yil(lar), oy(lar), kun(lar), soat(lar), minut(- lar), sekund(lar), mikrosekund(lar) YEAR(S), month(S), Day(S), HOUR(S), MINUTE(S), SECOND(S), MICROSECUND(S) lar ki­
ritiladi.
Quyidagi misol mazkur konstantalami qo'llash usulini ko'rsatadi.
Select Name, Dob, Dob+5 years from factory
where Name like ’Dob%';
Displey ekranida quyidagilar hosil bo'ladi:
Name Dob Dob+5 years D on T. 11.04.1966 11.04.1971
Donovan A. 14.05.196714.05.1972
Funksiyalar vazifalari. Funksiya faoliyati ko'p jihatdan operator faoliyatiga o'xshaydi. Boshqacha aytganda, funksiyalar foydalanuvchiga ma’lumotlar bilan manipulyatsiya qilishning yana bir usulini beradi.
Har bir funksiya bir yoki bir nechta argument (hujjat, asos)ga ega bo'ladi. Funksiya argumenti yo sonli, yoki satrli miqdorda bo'lishi mumkin.


Hisoblash tugagandan so'ng funksiya yagona sonli qiymatni yoki satrli iborani qabul qiladi. Funksiyalar boshqa dasturlashtirish tillari bilan o'xshash bo'lgani uchun ulaming qurilish (hosil bo'lish) prinsiplariga to'xtalmaymiz. Quyida ko'proq ishlatiladigan ORACLE funksiyalari keltiriladi:
a ) s o n li fu n k s iy a la r . Bu funksiyalarning argumenti sonli miqdordir.
Chiqishda bitta son bergan holda, bu funksiyalar ma’lumotlaming butun ustuni bilan ish olib boradi. Funksiyaning umumiy ko'rinishi quyidagicha:
funksiya nomi([distinct/all] ustun nomi)'ibora’ from jadval nomi.
Agar argument oldidan «distinct» tursa, bu barcha ustundagi hisob- kitoblar argumentlaming mos bo'lmagan qiymati ustida bajarilishini bildiradi. Agar argument oldidan «all» qo'yilgan yoki hech narsa ko'rsa- tilmagan bo'lsa, bunday holda hisob-kitob barcha qiymatlar ustida olib boriladi. Apostrofdagi ibora hisob(kitob) natijasi ustidan bosiladi.
1 AVR[distinct/all],n); n nomi bilan ustunning o'rtacha arifmetik qiymatini hisoblaydi.
Misol:
Select avr(distinct Salary)’avr salary' from factory
Natijada quyidagilar bosib chiqariladi:
avr salary 2237.50
Berilgan misolda kompyuter mos qiymatni chiqarib tashlagan holda, Salary ustunining o'rtacha qiymatini hisoblaydi.
2. MIN [distinct/all],n);
3. MAX[distinct/all],n);
2-va 3-funksiyalar n ustunining minimal va maksimal qiymatini hisoblaydi.
Misol:
Select min(Los) 'min los' from factory;
Natijada quyidagiga ega bo'lamiz. min Los
4. SUM ([distinct/all],n); n ustunining elementlari yig'indisini hisoblaydi.
Misol:
Select sum(Salary) sum salary1 from factory.
Natijada Salary ustunining barcha elementlari yig'indisi hisoblanadi.


5. COUNT ( [distinct/allJ, n); bu funksiya n ustunidagi elementlar miqdorini hisoblaydi.
Shuni belgilashimiz kerakki, (2—5) funksiyalar ustunda berilmagan elementlarni e'tibordan chetda qoldiradi.
Count funksiyasi «yulduzchani» argument sifatida qo'llashi mum­ kin.
Count(*)
Bu har bir ustunning barcha elementlari hisoblanishini bildiradi. Misol:
Select count(name),count(telno) from factory
count(name) count(telno) 15 13
Natijalarning har xil bo'lishiga sabab kompyuter Telno ustunidagi berilmagan qiymatlarni hisobga olmaganidir.
E'tibor beraylik, (1—5) funksiyalarini «where» dan keyin qo'llash mumkin(shartda).

Yüklə 29,35 Mb.

Dostları ilə paylaş:
1   ...   129   130   131   132   133   134   135   136   137




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin