![[sql_merged.pdf]] SQL Tabellen sind multimengen von tupeln Duplikate möglich!!! ## SQL Data Definition Language DDL 1. CREATE TABLE: zum Erstellen einer neuen Tabelle 2. ALTER TABLE: zum Ändern einer bestehenden Tabelle 3. DROP TABLE: zum Löschen einer Tabelle [[DDL Data Definition Language SQL]] ## SQL Data Manipulation Language DML 1. INSERT 2. UPDATE 3. DELETE [[DML Data Manipulation Language SQL]] ## SQL Data Query Language DQL | SQL | Argumente | Relationale Algebra | | ---------- | ------------------ | ------------------- | | **SELECT** | Liste von Namen | $\pi$ | | **FROM** | Liste von Tabellen | $\times$ | | **WHERE** | Bedingung | $\sigma$ | [[DQL Data Query Language SQL]] ## Aggregatfunktionen in SQL COUNT zählt Anzahl der Zeilen `SELECT COUNT(*) FROM Tabelle WHERE Bedingung;` SUM summiert werte einer Spalte `SELECT SUM(Spalte) FROM Tabelle WHERE Bedingung;` AVG berechnet Durchschnitt `SELECT AVG(Spalte) FROM Tabelle WHERE Bedingung;` MIN gibt kleinsten wert einer spalte zurück `SELECT MIN(Spalte) FROM Tabelle WHERE Bedingung;` MAX gibt höchsten Wert einer Spalte zurück `SELECT MAX(Spalte) FROM Tabelle WHERE Bedingung;` ## GROUP BY Gruppiert Zeilen basierend auf Werten einer oder mehrerer Spalten `SELECT Spalte1, AVG(Spalte2) FROM Tabelle GROUP BY Spalte1;` ### HAVING Filtert Abfragen mit Aggregatfunktion oder Group by `SELECT Spalte1, COUNT(*) FROM Tabelle GROUP BY Spalte1 HAVING COUNT(*) > 5;`