Aggregatsfunktion mit Group by und having SQL = Structured Query Language
Wiederholung – Aggregatsfunktion Sum() Ermitteln Sie die Summe der Gehälter aller Mitarbeiter Ergebnis: Welche Spalte/n sind gesucht? SELECT Sum(Gehalt) AS [Summe Gehälter] Aus welchen Tabellen sind die Spalten? FROM Mitarbeiter Welche Bedingung/en soll/en erfüllt sein? WHERE /
Wiederholung – Aggregatsfunktion Sum() Ermitteln Sie die Summe der Gehälter aller Mitarbeiter Ergebnis: Welche Spalte/n sind gesucht? SELECT Sum(gehalt) AS [Summe Gehälter] Aus welchen Tabellen sind die Spalten? FROM Mitarbeiter Welche Bedingung/en soll/en erfüllt sein? WHERE /
Wiederholung – Aggregatsfunktion Sum() Ermitteln Sie die Summe der Gehälter aller weiblichen Mitarbeiter Ergebnis: Welche Spalte/n sind gesucht? SELECT SUM(Gehalt) AS [Summe Gehälter weiblicher Mitarbeiter] Aus welchen Tabellen sind die Spalten? FROM Mitarbeiter Welche Bedingung/en soll/en erfüllt sein? WHERE Geschlecht = W
Wiederholung – Aggregatsfunktion Sum() Ermitteln Sie die Summe der Gehälter aller weiblichen Mitarbeiter Ergebnis: Welche Spalte/n sind gesucht? SELECT Sum(gehalt) AS [Summe Gehälter weiblicher Mitarbeiter] Aus welchen Tabellen sind die Spalten? FROM Mitarbeiter Welche Bedingung/en soll/en erfüllt sein? WHERE Geschlecht = w
Der Geschäftsführer hätte gerne eine Übersicht der Gehälter gruppiert nach Geschlechtern Wie sähe eine derartige Ergebnistabelle aus?
Der Geschäftsführer hätte gerne eine Übersicht der Gehälter gruppiert nach Geschlechtern
Aggregatsfunktion: Sum() mit Group by Ermitteln Sie die Summen der Gehälter gruppiert nach Geschlecht. Ergebnis: Welche Spalte/n sind gesucht? SELECT Geschlecht, SUM(Gehalt) AS [Summe Gehälter] Aus welchen Tabellen sind die Spalten? FROM Mitarbeiter Welche Bedingung/en soll/en erfüllt sein? WHERE / Wonach soll gruppiert werden? GROUP BY Geschlecht
Aggregatsfunktion: Sum() mit Group by Ermitteln Sie die Summen der Gehälter gruppiert nach Geschlecht. Ergebnis: Welche Spalte/n sind gesucht? SELECT Geschlecht, Sum(Gehalt) AS [Summe Gehälter] Aus welchen Tabellen sind die Spalten? FROM Mitarbeiter Welche Bedingung/en soll/en erfüllt sein? WHERE / Wonach soll gruppiert werden? GROUP BY Geschlecht
Der Geschäftsführer hätte gerne eine Übersicht der Gehälter NUR aus Abteilung mit Nr. M05 gruppiert nach Geschlechtern Wie sähe eine derartige Ergebnistabelle aus?
Der Geschäftsführer hätte gerne eine Übersicht der Gehälter NUR aus Abteilung mit Nr. M05 gruppiert nach Geschlechtern
Aggregatsfunktion: Sum() mit Group by Ermitteln Sie die Summen der Gehälter NUR aus Abteilung mit Nr. M05 gruppiert nach Geschlecht. Ergebnis: Welche Spalte/n sind gesucht? SELECT Geschlecht, SUM(Gehalt) AS [Gehälter aus Abteilung M05] Aus welchen Tabellen sind die Spalten? FROM Mitarbeiter Welche Bedingung/en soll/en erfüllt sein? WHERE ABT_Nr = M05 Wonach soll gruppiert werden? GROUP BY Geschlecht
Aggregatsfunktion: Sum() mit Group by Ermitteln Sie die Summen der Gehälter NUR aus Abteilung mit Nr. M05 gruppiert nach Geschlecht. Ergebnis: Welche Spalte/n sind gesucht? SELECT Geschlecht, Sum(Gehalt) AS [Gehälter aus Abteilung M05] Aus welchen Tabellen sind die Spalten? FROM Mitarbeiter Welche Bedingung/en soll/en erfüllt sein? WHERE Abt_nr = M05 Wonach soll gruppiert werden? GROUP BY Geschlecht
Eine Bedingung mit having Walter Breuer hätte gerne eine Übersicht der Gehälter NUR aus Abteilung mit Nr. M05 gruppiert nach Geschlechtern. Es soll nur die Gruppe, die eine Summe über ausweist angezeigt werden.
Eine Bedingung mit having bezieht sich auf die aggregierte SPALTE Ergebnis: Welche Spalte/n sind gesucht? SELECT Geschlecht, SUM(Gehalt) AS [Gehälter aus Abteilung M05] Aus welchen Tabellen sind die Spalten? FROM Mitarbeiter Welche Bedingung/en soll/en erfüllt sein? WHERE Abt_Nr = M05 Wonach soll gruppiert werden? GROUP BY Geschlecht Welche Bedingung soll die aggregierte Spalte erfüllen? HAVING SUM(Gehalt) > 90000
Eine Bedingung mit having bezieht sich auf die aggregierte SPALTE Ergebnis: Welche Spalte/n sind gesucht? SELECT Geschlecht, Sum(Gehalt) AS [Gehälter aus Abteilung M05] Aus welchen Tabellen sind die Spalten? FROM Mitarbeiter Welche Bedingung/en soll/en erfüllt sein? WHERE Abt_nr = M05 Wonach soll gruppiert werden? GROUP BY Geschlecht Welche Bedingung soll die aggregierte Spalte erfüllen? HAVING Sum(Gehalt) > 90000;