SQL Grundlagen

Kategorie: Systemintegration

Definition

SQL (Structured Query Language) ist die Standardsprache für relationale Datenbanken. Mit SQL können Daten gespeichert, abgefragt, geändert und gelöscht werden. SQL wird von nahezu allen relationalen Datenbanksystemen unterstützt, darunter MySQL, MariaDB, PostgreSQL, Oracle und Microsoft SQL Server.

Einsatzgebiete

• Daten abfragen • Daten speichern • Daten ändern • Daten löschen • Tabellen erstellen • Benutzer verwalten • Rechte vergeben

SQL-Befehlsgruppen

DDL (Data Definition Language) • CREATE • ALTER • DROP DML (Data Manipulation Language) • INSERT • UPDATE • DELETE DQL (Data Query Language) • SELECT DCL (Data Control Language) • GRANT • REVOKE

CREATE TABLE

Mit CREATE TABLE wird eine neue Tabelle erstellt. Beispiel: CREATE TABLE kunden ( id INT PRIMARY KEY, vorname VARCHAR(50), nachname VARCHAR(50), ort VARCHAR(50) );

Datentypen

INT Ganzzahlen VARCHAR(n) Zeichenketten variabler Länge DATE Datumswerte DECIMAL Kommazahlen BOOLEAN Wahr/Falsch

INSERT

INSERT fügt neue Datensätze in eine Tabelle ein. Beispiel: INSERT INTO kunden (id, vorname, nachname, ort) VALUES (1, 'Max', 'Mustermann', 'Berlin');

SELECT

SELECT wird verwendet, um Daten aus einer Tabelle auszulesen. Alle Datensätze: SELECT * FROM kunden; Bestimmte Spalten: SELECT vorname, nachname FROM kunden;

WHERE

WHERE filtert Datensätze nach Bedingungen. Beispiel: SELECT * FROM kunden WHERE ort = 'Berlin';

Vergleichsoperatoren

= gleich != ungleich > größer < kleiner >= größer gleich <= kleiner gleich

AND und OR

Mehrere Bedingungen können kombiniert werden. SELECT * FROM kunden WHERE ort = 'Berlin' AND nachname = 'Mustermann';

ORDER BY

Sortiert Ergebnisse. Aufsteigend: SELECT * FROM kunden ORDER BY nachname ASC; Absteigend: SELECT * FROM kunden ORDER BY nachname DESC;

UPDATE

UPDATE ändert bestehende Datensätze. UPDATE kunden SET ort = 'Hamburg' WHERE id = 1;

DELETE

DELETE entfernt Datensätze. DELETE FROM kunden WHERE id = 1;

Primärschlüssel

Der Primärschlüssel identifiziert jeden Datensatz eindeutig. Eigenschaften: • eindeutig • nicht NULL • nur einmal pro Tabelle

Fremdschlüssel

Fremdschlüssel stellen Beziehungen zwischen Tabellen her. Beispiel: Ein Kunde besitzt mehrere Bestellungen.

JOIN

JOIN verbindet Daten aus mehreren Tabellen. Beispiel: SELECT kunden.vorname, bestellungen.bestellnummer FROM kunden INNER JOIN bestellungen ON kunden.id = bestellungen.kunden_id;

INNER JOIN

Gibt nur Datensätze zurück, die in beiden Tabellen vorhanden sind.

LEFT JOIN

Gibt alle Datensätze der linken Tabelle zurück. Fehlende Werte der rechten Tabelle werden mit NULL gefüllt.

COUNT

Zählt Datensätze. SELECT COUNT(*) FROM kunden;

SUM

Addiert Werte. SELECT SUM(preis) FROM produkte;

AVG

Berechnet den Durchschnitt. SELECT AVG(preis) FROM produkte;

MIN und MAX

MIN = kleinster Wert MAX = größter Wert SELECT MAX(preis) FROM produkte;

GROUP BY

Gruppiert Datensätze. SELECT ort, COUNT(*) FROM kunden GROUP BY ort;

HAVING

Filtert Gruppen nach GROUP BY. SELECT ort, COUNT(*) FROM kunden GROUP BY ort HAVING COUNT(*) > 5;

Typische Prüfungsfrage

Was ist der Unterschied zwischen WHERE und HAVING? WHERE filtert Datensätze vor der Gruppierung. HAVING filtert Gruppen nach der Gruppierung.

Typische Prüfungsfrage

Was ist ein JOIN? Ein JOIN verbindet Datensätze aus mehreren Tabellen anhand gemeinsamer Attribute.

Merksätze für die Prüfung

SELECT liest Daten. INSERT fügt Daten ein. UPDATE ändert Daten. DELETE löscht Daten. Primärschlüssel identifizieren Datensätze. Fremdschlüssel verbinden Tabellen. JOINs verknüpfen mehrere Tabellen miteinander.