|
10-mavzu. Sqlda murakkab so’rovlar yaratish. Bir necha jadvallarni birlashtirish, ‘join’ lar bilan ishlash
|
bet | 1/12 | Sana | 24.11.2023 | Hajmi | 44,55 Kb. | | #105026 |
Bog'liq JSOON
Ma'lumotlarni guruhlash tamoyillari.
Ilgari barcha jamlama hisob-kitoblar jadvaldagi barcha ma'lumotlar yoki WHERE bandiga mos keladigan ma'lumotlar bo'yicha amalga oshirildi. Masalan, DLL01 sotuvchisi tomonidan taklif qilingan mahsulotlar miqdorini qaytaradigan SQL kodi quyidagicha:
SELECT COUNT(*) AS num_prods FROM Products WHERE vend id = 'DLL01';
Guruhlar yaratish. Guruhlar SELECT iborasining GROUP BY bandi yordamida yaratiladi.
Buni quyidagi aniq misol bilan ko'rsatish mumkin:
SELECT vend_id, COUNT(*) AS num prods FROM Products GROUP BY vend_id;
Natija:
vend id
|
num prods
|
BRS01
|
3
|
DLL01
|
4
|
FNG01
|
2
|
Ko'rib turganingizdek, natijalar BRS01 sotuvchisida uchta, DLL 01 sotuvchisida to'rtta va FNG01 sotuvchisida ikkita mahsulot borligini ko'rsatadi. GROUP BY bandi ishlatilganligi sababli, biz hisob-kitoblar bajarilishi kerak bo'lgan har bir guruhni ko'rsatishimiz shart emas edi. Bu avtomatik ravishda amalga oshirildi. GROUP BY bandi ma'lumotlar bazasini birinchi navbatda ma'lumotlarni guruhlash va keyin butun natijalar to'plamida emas, balki har bir guruhda hisob-kitoblarni bajarishga imkon beradi.
► GROUP BY bandi WHERE bandidan keyin va ORDER BY bandidan oldin kelishi kerak.
|
| |