SELECT ODate, SUM (AMT) FROM Orders a
GROUP BY ODate
HAVING SUM (AMT) >
( SELECT 2000.00 + MAX (AMT) FROM Orders b
WHERE a.ODate = b.ODate );
Ostki so‘rov asosiy so‘rovning ko‘rilayotgan agregat guruxi sanasiga teng sanaga ega xmma satrlar uchun MAX qiymat xisoblaydi. Bu WHERE ifodasidan foydalanib bajarilishi lozim. Ostki so‘rovning o‘zi GROUP BY yoki HAVING operatorlarini ishlatmasligi kerak.
EXISTS operatoridan foydalanish.
EXISTS - bu “TRUE” yoki “FALSE” qaytaruvchi operatordir. Bu shuni bildiradiki, u predikatda avtonom yoki mantiqiy operatorlar AND, OR, va NOT yordamida tuzilgan mantiqiy ifodalar bilan kombinatsiya qilingan xolda ishlatilishi mumkin. U ostki so‘rovni “TRUE” deb baxolaydi agar u ixtiyoriy natija xosil qilsa va “FALSE” deb baxolaydi xech qanday natija xosil qilmasa.
Misol: Agar buyurtmachilardan ju da bo‘lmasa bittasi San Jose shaxrida yashasa, buyurtmachilar jadvalidagi ma’lumotlarni chiqaring.
Do'stlaringiz bilan baham: |