O’zbekiston Respublikasi Axborot Texnologiyalari va
Kommunikatsiyalarini Rivojlantirish Vazirligi
Muhammad Al-Xorazmiy nomidagi
Toshkent Axborot Texnologiyalari Universiteti.
Ma’lumotlar bazasi fani.
LABAROTORIYA ISHI
Guruh:
Bajardi:Raxmonqulov J.
Tekshirdi:
Toshkent 2019
III-Laboratoriya ishi
MAVZU: Ma’lumotlar ustida amallar, SQL yordamida ma’lumotlar bazasiga ishlov berish, jadvallar ustida amallar, guruhlash funksiyalar va standart funksiyalar
ISHDAN MAQSAD: SQL so’rovlaridan foydalanib jadvalga atributlar qo’shish, atributlarni olib tashlash, jadvalga o’zgartirish kiritish va qidirish amallarini bajarish.
REJA:
1.Agrigat funksiyalardan foydalanib so’rovlar yozish
2.Jadvallar ustida guruhlash funksiyasi GROUP BY, ORDER BY va HAVING standart so’zidan foydalanish.
3.Relyatsion algebra amallari ( UNION, INTERSECT, MINUS).
4.SQL da standart funksiyalar. INT va STRING ma’lumot toifasidagi qiymatlar uchun funksiyalar yozish.
1.Agrigat funksiyalardan foydalanib so’rovlar yozish
SQL COUNT, SQL MAX, SQL MIN, SQL AVG, SQL SUM – bular agrigat funksiyalar. Bu funksiyalarning o’ziga yarasha vazifalari bor. Vazifalarini misollar orqali keltirib ketaman.
1-mislo.Masalan Aeroport ishchilarning o’rtacha yoshini chiqaramiz. Bunda biz AVG funksiyasidan foydalanamiz.
SELECT AVG(`Yoshi`) FROM `xodimlar`;
2-misol. Aeroport o’z xodimlariga bir oyda qancha mablag’ ajratishini ko’ramiz. Bunda biz SUM funksiyasidan foydalanamiz.
SELECT SUM(maoshi) FROM xodimlar;
3-misol. Aeroport o’z xodimlariga bir yilda qancha mablag’ ajratishini ko’ramiz. Bunda biz SUM funksiyasidan foydalanamiz va * belgisidan ham sababi bir yilda 12 oy bo’rligi uchun.
SELECT SUM(maoshi)*12 FROM xodimlar;
4-misol. Aeroport hodimlari o’rasidagi eng yosh hodimni yoshini bilmoqchimiz buning uchun MIN funksiyasidan foydalanamiz.
SELECT MIN(yoshi) FROM xodimlar;
5-misol. Aeroport hodimlari orasida eng katta maosh qancha ekanini bilmoqchimiz buning uchun biz MAX funksiyasidan foydalanamiz.
SELECT MAX(maoshi) FROM xodimlar;
COUNT funksiyasi jadvalning ustun sonini qaytaradigan funksiya. Funksiya yozuvi ustunli NULL yozuvlaridan tashqari ma’lum bir ustun uchun yozuvlar sonini qaytaradi.
6-misol. Xodimlar jadvalida qancha xodim bo’rligini aniqlashimiz kerak.
SELECT COUNT(*) FROM xodimlar;
7-misol. Xodimlar jadvalidan bir xil ismli nechta xodimlar bo’rligini bilmoqchimiz.
SELECT COUNT(*) FROM xodimlar WHERE FISH='quralov Nurxissa';
2.Jadvallar ustida guruhlash funksiyasi GROUP BY, ORDER BY va HAVING standart so’zidan foydalanish.
1.Operator HAVING standart so’zi – bu agrigat funksiyalarning natijasi. SQL dagi umumlashtiruvchi funksiya atribut qiymatlari to’plamidan har qanday qiymatni qaytaradigan funksiya. BUnday funksiyalar : SQL COUNT, SQL MAX, SQL MIN, SQL AVG, SQL SUM.
SQL HAVING ko’rsatmasi SQL Where bayonatiga o’xshaydi, bundan tashqari u jadvaldagi barcha ustunlar to’plami uchun ishlatilmaydi, lekin SQL GROUP BY tomonidan yaratilgan to’plam uchun ishlatiladi va har doim undan keyin qo’llaniladi.
Group by so’rovi bilan ID, FISh, lavozimini guruhlaymiz.
Order by so’rovi bilan xodimlarni alfavit bo’yicha tartiblaymiz.
Xodimlar jadvalimizdan Yoshi 20 dan kichik bo’lgan hodimlarni chiqaramiz.
Xodimlar jadvalimizdagi yoshi 22 dan katta hodimlarni chiqaramiz.
Xodimlar jadvalidan eng yosh xodimni chiqarib bersin.
SELECT FISh, min(yoshi) FROM xodimlar HAVING min(yoshi)
3.Relyatsion algebra amallari ( UNION, INTERSECT, MINUS).
Union komadasi bilan ikki sorovni birlashtiramiz.
4.SQL da standart funksiyalar. INT va STRING ma’lumot toifasidagi qiymatlar uchun funksiyalar yozish.
1.Murakkab funksiyalar yaratish.
DELIMITER $$
creat procedure toq_yoki_juft1(In raqam integer)
begin
if raqam%2=0 then
select 'raqam juft';
else
select ' raqam toq';
end if;
end$$
DELIMITER $$
creat procedure kvadrat(In raqam integer)
begin
select raqam*raqam;
end$$
DELIMITER $$
creat procedure ildiz(In raqam integer)
begin
select sqrt(raqam);
end$$
delimiter ;
Do'stlaringiz bilan baham: |