Calculations के लिए Select में Subqueries
SELECT में subqueries, किसी query में calculated कॉलम बनाने का एक उपयोगी तरीका हैं। SELECT की subquery को आपकी गणनाओं में एक single numeric value की तरह इस्तेमाल किया जा सकता है। SELECT में queries लिखते समय यह याद रखना महत्वपूर्ण है कि main query को filter करने से subquery filter नहीं होती — और इसका उलटा भी सही है.
पिछले अभ्यास में, आपने एक कॉलम बनाया था जो 2013/2014 season में हर league के औसत कुल गोल्स की तुलना overall औसत गोल्स से करता है। इस अभ्यास में, आप एक कॉलम जोड़ेंगे जो सीधे इन मानों की तुलना करेगा — यानी subquery वाले overall average को घटाकर.
यह अभ्यास पाठ्यक्रम का हिस्सा है
SQL में Data Manipulation
अभ्यास निर्देश
- Main query में, हर league के लिए एक मैच में किए गए गोल्स का average select करें.
- Subquery में,
'2013/2014'season के लिए overall एक मैच में किए गए गोल्स का average select करें. - हर league के लिए निकाले गए average गोल्स में से subquery को subtract करें.
- Main query को filter करें ताकि सिर्फ
'2013/2014'season के games शामिल हों.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
SELECT
-- Select the league name and average goals scored
___ AS league,
ROUND(___(___ + m.away_goal),2) AS avg_goals,
-- Subtract the overall average from the league average
ROUND(AVG(___ + m.away_goal) ___
(SELECT ___(___ + away_goal)
FROM match
WHERE ___ = ___),2) AS diff
FROM league AS l
LEFT JOIN match AS m
ON l.country_id = m.country_id
-- Only include 2013/2014 results
WHERE ___ = ___
GROUP BY l.name;