HAVING
WHERE wird verwendet, um Zeilen zu filtern, bevor eine Gruppierung stattfindet. Nachdem du eine Gruppierung durchgeführt hast, möchtest du die Anzahl der zurückgegebenen Zeilen vielleicht weiter einschränken. Dafür ist HAVING da.
In dieser Übung passt du eine vorhandene Abfrage an, um HAVING zu verwenden, sodass nur Ergebnisse mit einer Summe von über 10000 zurückgegeben werden.
Diese Übung ist Teil des Kurses
<Kurs>Einführung in SQL Server</Kurs>Übungsanweisungen
- Ändere die bereitgestellte Abfrage, indem du die
WHERE-Klausel entfernst. - Ersetze sie durch eine
HAVING-Klausel, sodass nur Ergebnisse zurückgegeben werden, bei denen die Gesamtsumme vondemand_loss_mwgrößer als10000ist.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
SELECT
nerc_region,
SUM (demand_loss_mw) AS demand_loss
FROM
grid
-- Remove the WHERE clause
WHERE demand_loss_mw IS NOT NULL
GROUP BY
nerc_region
-- Enter a new HAVING clause so that the sum of demand_loss_mw is greater than 10000
___
___(demand_loss_mw) > ___
ORDER BY
demand_loss DESC;