Kom igångKom igång gratis

Underfrågor i SELECT för beräkningar

Underfrågor i SELECT är ett praktiskt sätt att skapa beräknade kolumner i en fråga. En underfråga i SELECT behandlas som ett enskilt numeriskt värde som du kan använda i dina beräkningar. Tänk på att ett filter i huvudfrågan inte påverkar underfrågan – och vice versa.

I föregående övning skapade du en kolumn för att jämföra varje ligans genomsnittliga totala mål med det övergripande genomsnittet under säsongen 2013/2014. I den här övningen lägger du till en kolumn som direkt jämför dessa värden genom att subtrahera det övergripande genomsnittet från underfrågan.

Den här övningen är en del av kursen

Datahantering i SQL

Visa kurs

Övningsinstruktioner

  • Välj det genomsnittliga antalet mål per match för varje liga i huvudfrågan.
  • Välj det genomsnittliga antalet mål per match totalt för säsongen '2013/2014' i underfrågan.
  • Subtrahera underfrågan från det genomsnittliga antalet mål beräknat för varje liga.
  • Filtrera huvudfrågan så att bara matcher från säsongen '2013/2014' inkluderas.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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;
Redigera och kör kod