Kirish Ma’lumotlar bazasi haqida mbbt funktsityalari


-Mavzu: HAVING ning qo‘llanilishi



Download 5,2 Mb.
bet68/79
Sana17.04.2022
Hajmi5,2 Mb.
#558651
1   ...   64   65   66   67   68   69   70   71   ...   79
Bog'liq
Maruza mbbt (1-60)

50-Mavzu: HAVING ning qo‘llanilishi.
Reja:
1. WHERE bandida jamlash
2. HAVING ning qo‘llanilishi
3. O'sish tartibida saralashda
Faraz qilaylik, oldingi misolda siz faqat 90000 dan ortiq xarid qilishning maksimal miqdorini ko‘rishni xohlaysiz. WHERE bandida jamlash funksiyasidan foydalana olmaysiz (agar siz quyida tavsiflangan quyi so‘rovdan foydalanmasangiz), chunki predikatlar quyidagicha baholanadi. bir qatorning shartlari va agregat funktsiyalari qatorlar guruhlari bo'yicha baholanadi. Bu shuni anglatadiki, siz quyidagi kabi ishni qila olmaysiz:
BNum, MAX (SSsum) ni tanlang
FROM sotadi
QAYERDA MAX(SSsum)>90000
BNum BO'YICHA GURUHLASH
Bu SQL qoidalaridan voz kechish bo'ladi . Maksimal xarid qiymatini 90000 dan ortiq ko'rish uchun HAVING bandidan foydalanishingiz mumkin . HAVING bandi alohida satrlar uchun WHERE bandida bo'lgani kabi, guruhlashdan keyin ma'lum guruhlarni chiqishdan olib tashlash uchun ishlatiladigan mezonlarni belgilaydi . To'g'ri buyruq quyidagicha bo'ladi:
BNum, MAX (SSsum) ni tanlang
FROM sotadi
BNum BO'YICHA GURUHLASH
MAXS (SSsum)>90000

Bnum

MAX SOʻM

2

192000

bitta

100000

HAVING bandidagi argumentlar GROUP BY yordamida buyruqlarning SELECT bandidagi kabi qoidalarga amal qiladi , lekin ular har bir chiqish guruhi uchun bitta qiymatga ega bo‘lishi kerak. Quyidagi buyruq taqiqlanadi:
BNum, SDate, MAX(SSsum) ni tanlang
FROM sotadi
BNum, SDate BO'YICHA GURUHLASH
HAVING SDate="17.02.01"
SDate maydonini HAVING bandi bilan chaqirib bo'lmaydi, chunki u har bir chiqish guruhida bir nechta qiymatga ega bo'lishi mumkin. Bunday vaziyatga yo'l qo'ymaslik uchun HAVING bandi faqat GROUP BY tomonidan tanlangan agregatlarga yoki butun maydonlar to'plamiga murojaat qilishi kerak . Yuqoridagi so'rovni amalga oshirishning to'g'ri yo'li bor:
BNum, MAX (SSsum) ni tanlang
FROM sotadi
WHERE SDate="17.02.01"
BNum BO'YICHA GURUHLASH
Ko'pgina ma'lumotlar bazasini boshqarish tizimlari so'rov natijalarini yaxshilash uchun maxsus vositalarni taqdim etadi.
Aytaylik, siz ma'lumotni ehtiyojlaringizga mosroq shaklga qo'yish uchun oddiy raqamli hisob-kitoblarni amalga oshirmoqchisiz. SQL skalyar ifodalar va konstantalarni tanlangan maydonlar orasiga joylashtirish imkonini beradi. Masalan, mahsulotning kelajakdagi narxini ikki barobarga oshirishni hisobga olgan holda qarash kerak. Buning uchun biz quyidagi so'rovdan foydalanamiz:
Tovarlardan GTame, GTypeNum, GPrice*2 ni tanlang
Natijada biz quyidagilarni olamiz:


Download 5,2 Mb.

Do'stlaringiz bilan baham:
1   ...   64   65   66   67   68   69   70   71   ...   79




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish