5 SQL-Kommandos

5.1 CRUD-Operationen

CRUD steht für die vier grundlegenden Operationen in relationalen Datenbanken: Create, Read, Update und Delete. Diese Operationen ermöglichen es, Daten zu erstellen, abzufragen, zu aktualisieren und zu löschen. Im Folgenden werden die grundlegenden SQL-Kommandos für diese Operationen erläutert.

5.1.1 CREATE TABLE

Das CREATE TABLE-Statement wird verwendet, um eine neue Tabelle in der Datenbank zu erstellen. Dabei werden der Name der Tabelle sowie die Namen und Datentypen ihrer Spalten spezifiziert.

CREATE TABLE Mitarbeiter (
    MitarbeiterID INT PRIMARY KEY,
    Name VARCHAR(100),
    Position VARCHAR(100),
    Einstellungsdatum DATE
);

5.1.2 INSERT

Das INSERT-Statement fügt neue Datensätze zu einer Tabelle hinzu. Es gibt an, in welche Tabelle die Daten eingefügt werden sollen und welche Werte die einzelnen Spalten haben sollen.

INSERT INTO Mitarbeiter (MitarbeiterID, Name, Position, Einstellungsdatum)
VALUES (1, 'Max Mustermann', 'Softwareentwickler', '2023-01-10');

5.1.3 SELECT

Mit dem SELECT-Statement werden Daten aus einer Datenbank abgefragt. Es kann verwendet werden, um Daten aus einer oder mehreren Tabellen zu lesen. Man kann spezifizieren, welche Spalten ausgelesen werden sollen, und Bedingungen festlegen, welche Datensätze zurückgegeben werden sollen.

SELECT Name, Position FROM Mitarbeiter;

Dieser Befehl gibt die Namen und Positionen aller Mitarbeiter zurück.

Um nur bestimmte Datensätze abzufragen, kann die WHERE-Klausel verwendet werden:

SELECT * FROM Mitarbeiter WHERE Position = 'Softwareentwickler';

Dieser Befehl gibt alle Datensätze zurück, bei denen die Position “Softwareentwickler” ist.

5.1.4 UPDATE

Das UPDATE-Statement modifiziert bestehende Datensätze in einer Tabelle. Es wird angegeben, welche Tabelle aktualisiert werden soll, welche Spalten geändert werden sollen und welche neuen Werte diese Spalten haben sollen. Mit der WHERE-Klausel kann spezifiziert werden, welche Datensätze aktualisiert werden sollen.

UPDATE Mitarbeiter
SET Position = 'Senior Softwareentwickler'
WHERE MitarbeiterID = 1;

Dieser Befehl aktualisiert die Position des Mitarbeiters mit der ID 1 zu “Senior Softwareentwickler”.

5.1.5 DELETE

Das DELETE-Statement entfernt Datensätze aus einer Tabelle. Mit der WHERE-Klausel kann angegeben werden, welche Datensätze gelöscht werden sollen. Wenn die WHERE-Klausel weggelassen wird, werden alle Datensätze der Tabelle gelöscht (Vorsicht ist geboten!).

DELETE FROM Mitarbeiter WHERE MitarbeiterID = 1;

Dieser Befehl löscht den Datensatz des Mitarbeiters mit der ID 1 aus der Tabelle.

5.1.6 Zusammenfassung

Diese grundlegenden SQL-Kommandos bilden das Fundament für die Interaktion mit relationalen Datenbanken. Sie ermöglichen es, Tabellen zu erstellen, Daten einzufügen, abzufragen, zu aktualisieren und zu löschen, wodurch eine effektive Datenverwaltung möglich ist.

5.2 SQL Joins: Die wichtigsten Typen

SQL Joins werden verwendet, um Daten aus zwei oder mehr Tabellen basierend auf einer Beziehung zwischen bestimmten Spalten in diesen Tabellen zusammenzuführen. Die wichtigsten Join-Typen sind INNER JOIN, LEFT JOIN, RIGHT JOIN und FULL JOIN.

5.2.1 INNER JOIN

INNER JOIN gibt die Schnittmenge der beiden Tabellen zurück. Es werden nur die Zeilen angezeigt, die in beiden Tabellen eine Übereinstimmung haben.

SELECT Mitarbeiter.Name, Abteilung.Abteilungsname
FROM Mitarbeiter
INNER JOIN Abteilung ON Mitarbeiter.AbteilungsID = Abteilung.AbteilungsID;

5.2.2 LEFT JOIN

LEFT JOIN (oder LEFT OUTER JOIN) gibt alle Zeilen aus der linken Tabelle und die übereinstimmenden Zeilen aus der rechten Tabelle zurück. Für Zeilen in der linken Tabelle, die keine Entsprechung in der rechten Tabelle haben, werden die Spalten der rechten Tabelle mit NULL gefüllt.

SELECT Mitarbeiter.Name, Abteilung.Abteilungsname
FROM Mitarbeiter
LEFT JOIN Abteilung ON Mitarbeiter.AbteilungsID = Abteilung.AbteilungsID;

5.2.3 RIGHT JOIN

RIGHT JOIN (oder RIGHT OUTER JOIN) gibt alle Zeilen aus der rechten Tabelle und die übereinstimmenden Zeilen aus der linken Tabelle zurück. Für Zeilen in der rechten Tabelle, die keine Entsprechung in der linken Tabelle haben, werden die Spalten der linken Tabelle mit NULL gefüllt.

SELECT Mitarbeiter.Name, Abteilung.Abteilungsname
FROM Mitarbeiter
RIGHT JOIN Abteilung ON Mitarbeiter.AbteilungsID = Abteilung.AbteilungsID;

5.2.4 FULL JOIN

FULL JOIN (oder FULL OUTER JOIN) kombiniert die Ergebnisse von LEFT JOIN und RIGHT JOIN. Es gibt alle Zeilen aus beiden Tabellen zurück. Wenn es keine Übereinstimmung zwischen den Tabellen gibt, werden die fehlenden Seiten mit NULL gefüllt.

SELECT Mitarbeiter.Name, Abteilung.Abteilungsname
FROM Mitarbeiter
FULL JOIN Abteilung ON Mitarbeiter.AbteilungsID = Abteilung.AbteilungsID;

5.2.5 Zusammenfassung

Diese Join-Typen ermöglichen eine flexible Datenabfrage und -zusammenführung aus verschiedenen Tabellen, was für die Datenanalyse und Berichterstattung essentiell ist.