Files
ObsidianVault/SS2026/Datenbanken und Informationssysteme/SQL/SQL.md
T

59 lines
1.5 KiB
Markdown

![[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;`