Last updated
Last updated
Ushbu qo'llanmada siz bir nechta guruhlash to'plamlarini yaratish uchun PostgreSQL ROLLUP
-dan qanday foydalanishni o'rganasiz.
PostgreSQL ROLLUP
- bu GROUP BY
bandining kichik bandi bo'lib, u bir nechta guruhlash to'plamlarini aniqlash uchun stenografiyani taklif qiladi. Guruhlash to'plami - bu siz guruhlaydigan ustunlar to'plami. Batafsil ma'lumot uchun guruhlash to'plamlari qo'llanmasini ko'rib chiqing.
CUBE
kichik bandidan farqli o'laroq, ROLLUP
belgilangan ustunlar asosida barcha mumkin bo'lgan guruhlash to'plamlarini yaratmaydi. Bu shunchaki ularning kichik to'plamini yaratadi.
ROLLUP
kirish ustunlari orasidagi ierarxiyani qabul qiladi va ierarxiyani hisobga olgan holda mantiqiy bo'lgan barcha guruhlash to'plamlarini yaratadi. Shuning uchun ROLLUP
ko'pincha hisobotlar uchun oraliq jamlamalar va umumiy jami yaratish uchun ishlatiladi.
Masalan, CUBE (c1,c2,c3)
barcha mumkin bo'lgan sakkizta guruhlash to'plamini yaratadi:
Biroq, ROLLUP(c1,c2,c3)
c1 > c2 > c3
ierarxiyasini quyidagi tarzda qabul qilib, faqat to'rtta guruhlash to'plamini hosil qiladi:
ROLLUP
dan keng tarqalgan foydalanish ierarxiya yil > oy > sanani
hisobga olgan holda yil, oy va sana boʻyicha maʼlumotlar yigʻindisini hisoblashdir.
Quyida PostgreSQL ROLLUP
sintaksisi tasvirlangan:
Yaratilgan oraliqlar sonini kamaytirish uchun qisman yig'ish ham mumkin.
Agar siz savdo jadvalini yaratmagan bo'lsangiz, quyidagi skriptdan foydalanishingiz mumkin:
Quyidagi so'rovda brend bo'yicha (jami jami) va barcha brendlar va segmentlar (jami) bo'yicha sotilgan mahsulotlar sonini topish uchun ROLLUP
bandidan foydalaniladi
Chiqarishdan aniq ko'rinib turibdiki, uchinchi qatorda ABC
brendining sotuvi, oltinchi qatorda XYZ
brendining sotuvi ko'rsatilgan.Oxirgi qatorda barcha brendlar va segmentlar uchun umumiy summa ko'rsatilgan. Bu misolda ierarxiya brand > segment
hisoblanadi.
Agar siz brend va segment tartibini o'zgartirsangiz, natija quyidagicha farq qiladi:
Bunday holda, ierarxiya segment > brand
dir.
Quyidagi bayonot qisman yig'ishni amalga oshiradi:
Quyidagi bayonot ROLLUP
yordamida kunlik, oylik va yildagi ijaralar sonini topadi:
Ushbu qo'llanmada siz bir nechta guruhlash to'plamlarini yaratish uchun PostgreSQL ROLLUP
dan qanday foydalanishni o'rgandingiz.
maʼlumotlar bazasidan quyidagi ijara jadvaliga qarang.