SELECT REP, CUST, SUM(AMOUNT)
FROM ORDERS
GROUP BY REP, CUST
ORDER BY REP, CUST
Shunday qilib GROUP BY ifodasi SELECT ni guruhlarni qayta ishlashga majbur
qiladi.
MS SQL serverida COMPUTE ifodasi mavjud bo‗lib relyasion so‗rovlar
asoslariga zid keladi. Lekin uning yordamida saqlanuvchi protseduralardan
foydalanmasdan shunga o‗xshash natijalarni olish mumkin. Ruruxlanishli so‗rovlar
uchun chegaralar mavjud. Satrlarni hisoblanuvchi ifoda asosida guruhlash mumkin
emas. Qaytarilao‗tgan qiymatlar elementlariga ham chegaralar mavjud.
Qaytariluvchi ustun bo‗lishi mumkin:
1. Konstantalar.
2. Guruhga kirgan hamma satrlar uchun bitta qiymat qaytaruvchi agregat funksiya.
3. Guruh hamma satrlarida bir xil qiymatga ega guruhlash ustuni.
4. Ko‗rsatilgan elementlarni o‗z ichiga oluvchi ifoda.
Odatda guruhlanishli so‗rovlar qaytaruvchi ustunlarga guruhlash ustuni va agregat
funksiya kiradi. Agar agregat ko‗rsatilmasa GROUP BY dan foydalanmasdan
DISTINCT ifodasidan foydalanish yetarli. Agar so‗rovga guruhlash ustuni
qo‗shilmasa, u yoki bu satr qaysi guruhga tegishliligini aniqlash mumkin emas.
SHu kabi SQL92 guruhlanishli so‗rovlarni taxlil qilishda birlamchi va ikkilamchi
kalitlar haqidagi ma‘lumot ishlatilmaydi. Har bir xizmatchi uchun buyurtmalar
umumiy sonini hisoblash.
Do'stlaringiz bilan baham: |