011. Agregat funksiyalar, GROUP BY, HAVING
Bu mavzuda COUNT, SUM, AVG, MIN, MAX, FILTER, ROLLUP bo'yicha 56 ta masala bor. Har bir masala oldida qavs ichida sxema nomi va qiyinlik darajasi ko'rsatilgan. Sxemalar Sxemalar va tayyorlov sahifasida berilgan.
Masalani o'zingiz yechib, natijani Kutilgan natija bilan solishtiring. O'zgartiruvchi masalalarda (INSERT, UPDATE, DELETE, DDL) natija shartda aytilgan tekshiruv so'rovidan olingan. Natija 10 qatordan ko'p bo'lsa, birinchi 10 qator ko'rsatilgan.
1. (soni, oson) Mijozlar sonini chiqaring (soni).
2. (dokon, oson) Mahsulotlarning o'rtacha narxini (2 xona) chiqaring.
3. (maks, oson) Eng qimmat va eng arzon mahsulot narxlarini (maks,min) chiqaring.
4. (dokon, oson) Ombordagi jami mahsulot miqdori (qoldiq yig'indisi).
5. (dokon, oson) Har bir shahar bo'yicha mijozlar soni (shahar, soni).
6. (dokon, oson) Har bir kategoriya bo'yicha mahsulotlar soni (kategoriya_id, soni).
7. (dokon, oson) Har bir buyurtma holati bo'yicha sonini chiqaring.
8. (dokon, oson) To'lov usuli bo'yicha jami summa (usul, jami).
9. (dokon, o'rta) Kategoriya bo'yicha o'rtacha narx (2 xona).
10. (dokon, o'rta) Mahsulotlari 5 tadan ko'p bo'lgan kategoriyalar (HAVING).
11. (dokon, o'rta) Mijozi 5 tadan ko'p bo'lgan shaharlar.
12. (dokon, o'rta) Har bir buyurtma elementlari bo'yicha jami miqdor (buyurtma_id, jami), birinchi 5.
13. (dokon, o'rta) Mahsulot bo'yicha sotilgan jami miqdor, eng ko'p sotilgan 5 ta.
14. (dokon, o'rta) Oylar bo'yicha buyurtmalar soni (oy_boshi, soni).
Kutilgan natija
15. (dokon, o'rta) Mijoz bo'yicha buyurtmalar soni, 3 tadan ko'p bo'lganlar (mijoz_id, soni).
16. (dokon, o'rta) Noyob mahsulotlar sotilganini COUNT(DISTINCT) bilan chiqaring.
17. (dokon, o'rta) Qoldiq bo'yicha ombor qiymati (narx*qoldiq) kategoriya bo'yicha jami.
18. (dokon, qiyin) Shahar va ro'yxatdan o'tgan yil bo'yicha mijozlar soni (shahar, yil, soni).
Kutilgan natija
19. (dokon, qiyin) GROUPING SETS bilan: kategoriya bo'yicha va umumiy mahsulot soni (kategoriya_id NULL = jami).
20. (dokon, qiyin) ROLLUP bilan (usul) bo'yicha to'lov yig'indisi va umumiy jami.
21. (maktab, oson) O'quvchilar sonini chiqaring.
22. (maks, oson) Eng yuqori va eng past maoshni chiqaring (maks,min).
23. (maktab, oson) Har bir sinfdagi o'quvchilar soni (sinf_id, soni).
24. (maktab, oson) Har bir fan bo'yicha o'rtacha ball (2 xona).
25. (maktab, oson) O'g'il va qiz bolalar soni (jins, soni).
26. (maktab, o'rta) O'rtacha bali 3.2 dan yuqori o'quvchilar (HAVING), oquvchi_id va ortacha (2 xona).
Kutilgan natija
27. (maktab, o'rta) Davomat holati bo'yicha sanang.
28. (maktab, o'rta) Har bir fan bo'yicha eng yuqori va eng past ball (fan_id, maks, min).
29. (maktab, o'rta) 20 tadan ko'p baho qo'yilgan fanlar.
30. (maktab, o'rta) Sinf va jins bo'yicha o'quvchilar soni.
Kutilgan natija
31. (maktab, qiyin) Har bir o'quvchi uchun 5 olgan baholar sonini FILTER bilan chiqaring (faqat kamida bitta 5 si borlar).
32. (bank, oson) Hisoblar umumiy balansi (UZS hisoblari).
33. (bank, oson) Eng katta qarz summasi.
34. (bank, oson) Hisob turi bo'yicha hisoblar soni.
35. (bank, oson) Qarz holati bo'yicha jami summa.
36. (bank, o'rta) Tranzaksiya turi bo'yicha jami va o'rtacha summa (butun songa).
Kutilgan natija
37. (bank, o'rta) Filial bo'yicha mijozlar soni.
38. (bank, o'rta) Hisob bo'yicha tranzaksiyalar soni, 3 tadan ko'p bo'lganlar.
39. (bank, o'rta) Mijozlar bo'yicha qarzlarning jami summasi (mijoz_id, jami), kamayish tartibida birinchi 5.
40. (bank, o'rta) Valyuta bo'yicha o'rtacha balans.
41. (bank, qiyin) Har bir mijoz uchun hisoblar soni va jami balans (hisobi borlar), jami balans > 30 mln.
Kutilgan natija
42. (bank, qiyin) Oy bo'yicha kirim va chiqim summalari (FILTER bilan): oy, kirim, chiqim.
Kutilgan natija
43. (kutubxona, oson) Kitoblar umumiy nusxalari soni.
44. (kutubxona, oson) Janr bo'yicha kitoblar soni.
45. (kutubxona, oson) Muallif bo'yicha kitoblar soni.
46. (kutubxona, o'rta) A'zo bo'yicha ijaralar soni, 3 tadan ko'p bo'lganlar.
47. (kutubxona, o'rta) Eng ko'p ijaraga olingan 5 ta kitob (kitob_id, soni).
48. (kutubxona, o'rta) Davlat bo'yicha mualliflar soni.
49. (kutubxona, qiyin) Har bir a'zoning o'rtacha ushlab turish kuni (qaytarilganlar) va ijaralar soni; o'rtacha 10 kundan ko'p bo'lganlar.
Kutilgan natija
50. (kutubxona, qiyin) Dekada bo'yicha kitoblar soni ((yil/10)*10): dekada, soni.
51. (dokon, oson) Har bir to'lov usuli bo'yicha to'lovlar sonini chiqaring.
52. (dokon, o'rta) Eng katta o'rtacha narxli kategoriya id sini chiqaring.
53. (maktab, oson) O'qituvchilar o'rtacha maoshini butun songa yaxlitlab chiqaring.
54. (maktab, o'rta) Har bir o'quvchi uchun baholar sonini chiqaring; 5 tadan ko'p baho olganlar (oquvchi_id, soni).
55. (bank, o'rta) Hisob turi va valyuta bo'yicha balanslar yig'indisi.
Kutilgan natija
56. (kutubxona, o'rta) Janr bo'yicha o'rtacha nashr yilini butun songa yaxlitlang (janr_id, yil).