Zum Inhalt springen

MYSQL verstehen lernen


Soulclaw90

Empfohlene Beiträge

Hallo,

 

Gibt es eine Seite oder Videos wo MYSQL gut erklärt wird das es auch einfach verstanden wird. Wir haben diese Woche damit angefangen und ein Skript bekommen und Datenbanken wo wir abfragen starten bzw üben sollen, die Datenbank war vorgegeben. Aber ich hab ziemliche Probleme wenn es um die aggregatfunktionen und group by,hsving etc. Geht

Im Internet hab ich bisher keine verständlichen Erklärungen auf den Seiten gefunden.  Gibt es da evtl gute tutorials oder Videos zu dem Thema?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Auf Youtube und Google findet man doch Tonnenweise Links und Videos zu SQL. Wo genau liegt das Problem?

GROUB BY ist doch erstmal nur eine Gruppierung der Datensätze. Ich hab z.B. folgende Tabelle:

ID	Name	Stadt		Alter
-------------------------------------
1	Hans	Hamburg		50
2	Petra	Hamburg		23
3	Iris	München		42
4	Peter	Stuttgart	19
5	Felix	München		25

Ich möchte jetzt wissen wie viele Menschen aus den jeweiligen Städten kommen:

SELECT
	Stadt,
	COUNT(*)
FROM
	Mitarbeiter
GROUP BY
	Stadt

Als erstes wird dann intern aus den oberen 5 Zeilen Gruppen gebildet.

ID	Name	Stadt		Alter
--------------------------------------
Gruppe "Hamburg":
1	Hans	Hamburg		50
2	Petra	Hamburg		23
Gruppe "München":
3	Iris	München		42
5	Felix	München		25
Gruppe "Stuttgart":
4	Peter	Stuttgart	19

Da diese Gruppen so nicht ausgegeben werden können, müssen jetzt Aggregatfunktionen, wie z.B. COUNT, AVG, MIN oder MAX verwendet werden, um aus den Gruppen einzelne Zeilen zu machen. In meinem Beispiel möchte ich die Anzahl der Zeilen pro Gruppe zählen. Also COUNT(*). Als Ergebnis erhalte ich dann, wie viele Mitarbeiter aus den jeweiligen Städten kommen.

Stadt		COUNT(*)
------------------------
Hamburg		2
München		2
Stuttgart 	1

Möchte ich z.B. das Durchschnittsalter der Mitarbeiter, gruppiert nach den Städten haben, muss ich anstatt COUNT(*) nun AVG(Alter) angeben:

SELECT
	Stadt,
	AVG(Alter)
FROM
	Mitarbeiter
GROUP BY
	Stadt
Stadt		AVG(Alter)
------------------------
Hamburg		36,5
München		33,5
Stuttgart 	19

Das HAVING ist noch mal eine Filterung auf die Gruppierung selber. Ich möchte alle Städte auflisten, wo nur eine einzige Person arbeitet:

SELECT
	Stadt
FROM
	Mitarbeiter
GROUP BY
	Stadt
HAVING
	COUNT(*) = 1
Stadt
-----
Stuttgart

Ansonsten kann man doch alles hier sehr gut nachlesen: https://www.w3schools.com/sql/sql_groupby.asp
Oder hier: https://www.geeksforgeeks.org/sql-group-by/
Oder hier: https://www.sqltutorial.org/sql-group-by/

Von der Uni Kaiserslautern gibt es auch ein kleines Spiel, um SQL zu lernen. Vielleicht ist dies auch was für dich:
https://sql-island.informatik.uni-kl.de/

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 1 Monat später...
  • 3 Monate später...

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...