- 1 Section
- 8 Lessons
- unbegrenzt
SQL-Grundlagen – Arbeiten mit relationalen Datenbanken
SQL (Structured Query Language) ist die Standard-Sprache für alle relationalen Datenbanken.
Egal ob du mit MySQL, MariaDB, PostgreSQL oder Oracle arbeitest – die Grundbefehle sind überall gleich.
Mit SQL kann man:
Daten abfragen (lesen)
Daten verändern (einfügen, ändern, löschen)
Tabellen und Strukturen erstellen oder anpassen
Man unterscheidet dabei grob zwischen:
DDL (Data Definition Language) – beschreibt die Struktur (
CREATE,ALTER,DROP)DML (Data Manipulation Language) – arbeitet mit den Daten (
SELECT,INSERT,UPDATE,DELETE)
1. Datenbank und Tabellen anlegen
Bevor du Daten speichern kannst, brauchst du eine Datenbank und Tabellen.
CREATE DATABASE firma;
USE firma;
CREATE TABLE kunden (
kundennr INT PRIMARY KEY,
name VARCHAR(50),
ort VARCHAR(50)
);
CREATE TABLE bestellungen (
bestellnr INT PRIMARY KEY,
kundennr INT,
betrag DECIMAL(6,2),
FOREIGN KEY (kundennr) REFERENCES kunden(kundennr)
);
Erklärung:
CREATE DATABASElegt eine neue Datenbank an.USEwählt sie aus.CREATE TABLEerzeugt Tabellen mit Spalten und Datentypen.FOREIGN KEYstellt die Beziehung zwischen Tabellen her.
2. Daten einfügen (INSERT)
Jetzt füllen wir die Tabellen mit Beispiel-Daten:
INSERT INTO kunden (kundennr, name, ort) VALUES
(1001, 'Anna Beispiel', 'Berlin'),
(1002, 'Max Mustermann', 'Hamburg');
INSERT INTO bestellungen (bestellnr, kundennr, betrag) VALUES
(5001, 1001, 89.90),
(5002, 1002, 59.00),
(5003, 1001, 39.00);
Tipp:
Wenn du mehrere Datensätze auf einmal einfügst, kannst du alle Werte in einem einzigen INSERT-Befehl angeben – das ist effizienter.
3. Daten abfragen (SELECT)
Das ist der wichtigste SQL-Befehl.
Er holt Daten aus einer oder mehreren Tabellen.
Einfaches Beispiel:
SELECT * FROM kunden;
→ zeigt alle Spalten (*) und Zeilen der Kundentabelle.
Bestimmte Spalten auswählen:
SELECT name, ort FROM kunden;
Bedingungen mit WHERE:
SELECT * FROM kunden WHERE ort = 'Berlin';
4. Tabellen verbinden (JOIN)
Das ist das Herzstück relationaler Systeme:
Daten aus mehreren Tabellen werden über Schlüssel zusammengeführt.
Beispiel:
SELECT k.name, b.bestellnr, b.betrag
FROM kunden k
JOIN bestellungen b ON k.kundennr = b.kundennr;
Erklärung:
JOINverbindet Tabellen über den angegebenen Schlüssel.kundbsind Tabellen-Aliasse (Abkürzungen).So kannst du Daten logisch kombinieren, ohne sie doppelt zu speichern.
Ergebnis:
| name | bestellnr | betrag |
|---|---|---|
| Anna Beispiel | 5001 | 89.90 |
| Anna Beispiel | 5003 | 39.00 |
| Max Mustermann | 5002 | 59.00 |
5. Daten aktualisieren (UPDATE)
UPDATE kunden
SET ort = 'Köln'
WHERE kundennr = 1001;
Ändert nur den Datensatz, der der Bedingung entspricht.
Ohne WHERE würdest du alle Datensätze ändern – also immer aufpassen.
6. Daten löschen (DELETE)
DELETE FROM kunden
WHERE kundennr = 1002;
Löscht den Datensatz für Max Mustermann.
Auch hier gilt: ohne WHERE → alles gelöscht.
7. Daten sortieren und filtern
Sortieren:
SELECT * FROM kunden ORDER BY name ASC;
Filtern mit mehreren Bedingungen:
SELECT * FROM bestellungen
WHERE betrag > 50 AND kundennr = 1001;
Operatoren:
=gleich<>ungleich<,>kleiner, größerAND,OR,NOTkombinieren Bedingungen
8. Daten gruppieren (GROUP BY)
Damit kannst du Werte zusammenfassen, z. B. Gesamtsummen oder Durchschnittswerte.
SELECT kundennr, SUM(betrag) AS gesamt
FROM bestellungen
GROUP BY kundennr;
Ergebnis:
| kundennr | gesamt |
|---|---|
| 1001 | 128.90 |
| 1002 | 59.00 |
9. Daten aggregieren (Zählen, Summieren, Durchschnitt)
SQL hat eingebaute Aggregatfunktionen:
| Funktion | Bedeutung |
|---|---|
COUNT() | Anzahl |
SUM() | Summe |
AVG() | Durchschnitt |
MIN() | Kleinster Wert |
MAX() | Größter Wert |
Beispiel:
SELECT COUNT(*) FROM kunden;
→ liefert die Anzahl aller Kunden.
10. Zusammenfassung
| Kategorie | Befehl | Zweck |
|---|---|---|
| Struktur | CREATE, ALTER, DROP | Tabellen und Datenbanken verwalten |
| Datenpflege | INSERT, UPDATE, DELETE | Daten hinzufügen, ändern, löschen |
| Abfrage | SELECT, WHERE, JOIN, GROUP BY | Daten lesen und kombinieren |
| Analyse | SUM, AVG, COUNT | Daten auswerten |
Merksatz:
SQL ist die Sprache, mit der du einer Datenbank Fragen stellst –
und sie antwortet dir mit Tabellen.
