SQL Lernen für Anfänger

SQL, die Abkürzung für Structured Query Language, ist eine standardisierte Programmiersprache, die primär dazu genutzt wird, um mit Datenbanken zu interagieren. Mit SQL können Benutzer Daten abrufen, einfügen, aktualisieren und löschen – und das in einer fast unglaublichen Vielfalt. In diesem Artikel konzentrieren wir uns auf diese vier fundamentalen Operationen, oft auch CRUD-Operationen genannt (Create, Read, Update, Delete).

SELECT: Daten abrufen

Der SELECT-Befehl ist möglicherweise der am häufigsten verwendete SQL-Befehl. Er erlaubt es uns, Daten aus einer oder mehreren Tabellen einer Datenbank abzurufen.

SELECT Spaltenname1, Spaltenname2
FROM Tabellenname
WHERE Bedingung;
  • Spaltenname1, Spaltenname2: Die Namen der Spalten, deren Daten Sie abrufen möchten.
  • Tabellenname: Der Name der Tabelle, aus der Sie Daten abrufen möchten.
  • Bedingung: Eine Bedingung, die bestimmt, welche Datensätze abgerufen werden sollen.

INSERT: Daten hinzufügen

Mit dem INSERT-Befehl können wir neue Datensätze zu einer Tabelle hinzufügen.

INSERT INTO Tabellenname (Spaltenname1, Spaltenname2)
VALUES (Wert1, Wert2);
  • Tabellenname: Der Name der Tabelle, in die Sie Daten einfügen möchten.
  • Spaltenname1, Spaltenname2: Die Namen der Spalten, in die Sie Werte einfügen möchten.
  • Wert1, Wert2: Die Werte, die Sie in die Spalten einfügen möchten.

UPDATE: Daten aktualisieren

Der UPDATE-Befehl ermöglicht es, bestehende Daten in der Datenbank zu modifizieren.

UPDATE Tabellenname
SET Spaltenname1 = Wert1, Spaltenname2 = Wert2
WHERE Bedingung;
  • Tabellenname: Der Name der Tabelle, in der Sie Daten aktualisieren möchten.
  • Spaltenname1, Spaltenname2: Die Namen der Spalten, die Sie aktualisieren möchten.
  • Wert1, Wert2: Die neuen Werte, die Sie in die Spalten einfügen möchten.
  • Bedingung: Eine Bedingung, die bestimmt, welche Datensätze aktualisiert werden sollen.

DELETE: Daten löschen

Der DELETE-Befehl ermöglicht es, Daten aus der Datenbank zu entfernen.

DELETE FROM Tabellenname
WHERE Bedingung;
  • Tabellenname: Der Name der Tabelle, aus der Sie Daten löschen möchten.
  • Bedingung: Eine Bedingung, die bestimmt, welche Datensätze gelöscht werden sollen.

Funktionen im SQL

Funktionen in SQL dienen dazu, Operationen auf Daten auszuführen, und umfassen eine breite Palette von Möglichkeiten, von mathematischen Berechnungen bis hin zur Bearbeitung von Text. Funktionen können direkt innerhalb von SQL-Abfragen verwendet werden, um die abgerufenen Daten zu verarbeiten und manipulieren.

1. Mathematische Funktionen

Diese Funktionen bieten eine Möglichkeit, mathematische Berechnungen direkt in SQL-Abfragen durchzuführen. Einige Beispiele:

  • ROUND(): Rundet eine Zahl auf eine bestimmte Anzahl von Dezimalstellen.
SELECT ROUND(123.4567, 2) AS Rounded;

AVG(): Berechnet den Durchschnittswert eines numerischen Spaltenwertes.

SELECT AVG(Preis) AS Durchschnittspreis FROM Produkte;

2. Zeichenkettenfunktionen

Zeichenkettenfunktionen werden verwendet, um und mit Text zu arbeiten. Einige Beispiele:

  • CONCAT(): Verkettet zwei oder mehr Zeichenketten.
SELECT CONCAT(Vorname, ' ', Nachname) AS Vollname FROM Mitarbeiter;

SUBSTRING(): Extrahiert Teilzeichenketten aus einer Zeichenkette.

SELECT SUBSTRING(Vollname, 1, 5) AS Abkürzung FROM Mitarbeiter;

3. Datums- und Zeitfunktionen

Mit diesen Funktionen können Sie mit Datums- und Zeitwerten arbeiten. Einige Beispiele:

  • GETDATE(): Gibt das aktuelle Datum und die aktuelle Uhrzeit zurück.
SELECT GETDATE() AS AktuellesDatum;

4. Aggregatfunktionen

Aggregatfunktionen ermöglichen es, zusammenfassende Werte, wie Summe oder Durchschnitt, über Datenmengen zu berechnen. Einige Beispiele:

  • SUM(): Addiert die Werte einer bestimmten Spalte aller ausgewählten Zeilen.
SELECT SUM(Umsatz) AS Gesamtumsatz FROM Verkäufe;

COUNT(): Zählt die Anzahl der Zeilen, die den Kriterien einer Abfrage entsprechen.

SELECT COUNT(*) AS AnzahlProdukte FROM Produkte WHERE Preis > 10;

5. Konvertierungsfunktionen

Mit Konvertierungsfunktionen können Sie den Datentyp eines Wertes ändern. Einige Beispiele:

  • CAST(): Konvertiert einen Wert von einem Datentyp in einen anderen.
SELECT CAST(Preis AS INT) AS GanzzahlPreis FROM Produkte;

CONVERT(): Ähnlich wie CAST(), aber mit einer Syntax, die spezifisch für SQL Server ist.

SELECT CONVERT(INT, Preis) AS GanzzahlPreis FROM Produkte;

SQL-Funktionen sind wesentliche Werkzeuge, die dazu beitragen, Datenbankabfragen zu optimieren und effizienter mit Daten zu arbeiten. Sie ermöglichen eine Vielzahl von Operationen und Berechnungen direkt innerhalb der Datenbank und minimieren so den Bedarf an nachträglicher Datenmanipulation. Mit einem soliden Verständnis dieser Funktionen können Sie komplexere Abfragen erstellen und Ihre Daten auf vielfältige und leistungsstarke Weise manipulieren.

Aggregationen und Gruppierungs-Operatoren

Aggregationen in SQL dienen dazu, zusammengefasste Daten aus unterschiedlichen Zeilen zu erzeugen, meist in Kombination mit Gruppierungs-Operatoren. Durch die Verwendung von Aggregationsfunktionen können Sie beispielsweise Durchschnittswerte berechnen, die Anzahl von Einträgen zählen oder den minimalen und maximalen Wert einer Datenreihe finden. Hier sind einige der wichtigsten Aggregationsfunktionen in SQL.

1. COUNT()

Die Funktion COUNT() gibt die Anzahl der Zeilen in einer Ergebnismenge zurück, optional basierend auf einer bestimmten Spalte.

SELECT COUNT(*) FROM Mitarbeiter;

2. SUM()

SUM() gibt die Summe aller Werte einer bestimmten Spalte zurück.

SELECT SUM(Gehalt) AS Gesamtgehalt FROM Mitarbeiter;

3. AVG()

Die Funktion AVG() berechnet den Durchschnittswert einer numerischen Spalte.

SELECT AVG(Gehalt) AS Durchschnittsgehalt FROM Mitarbeiter;

4. MIN() und MAX()

MIN() und MAX() geben den kleinsten bzw. größten Wert einer Spalte zurück.

SELECT MIN(Gehalt) AS NiedrigstesGehalt, MAX(Gehalt) AS HöchstesGehalt FROM Mitarbeiter;

5. GROUP BY

Um Aggregationsfunktionen effektiv zu nutzen, wird oft GROUP BY verwendet, um die Ergebnisse nach einer oder mehreren Spalten zu gruppieren.

SELECT Abteilung, AVG(Gehalt) AS Durchschnittsgehalt
FROM Mitarbeiter
GROUP BY Abteilung;

6. HAVING

HAVING wird genutzt, um Bedingungen an die Aggregationsfunktionen zu knüpfen, ähnlich wie WHERE für normale Zeilenauswahlen.

SELECT Abteilung, AVG(Gehalt) AS Durchschnittsgehalt
FROM Mitarbeiter
GROUP BY Abteilung
HAVING AVG(Gehalt) > 50000;

Aggregationsfunktionen in SQL bieten eine mächtige Möglichkeit, Daten zu analysieren und Berichte direkt aus der Datenbank heraus zu generieren. Durch die Kombination von Aggregationsfunktionen mit GROUP BY und HAVING können Sie detaillierte, gruppierte Berichte erstellen, die Einsichten in Ihre Daten bieten. Ein tiefes Verständnis dieser Funktionen ist essentiell für jeden, der mit Datenbanken und Datenanalyse arbeitet, und ermöglicht die Erstellung komplexer Datenabfragen und -berichte.

SQL AND & OR Operatoren

SQL-Operatoren wie AND und OR sind fundamental für die Entwicklung von effektiven Datenbankabfragen. Diese logischen Operatoren ermöglichen die Erstellung komplexerer Bedingungen bei der Datenabfrage, um genau die gewünschten Daten aus einer Datenbank zu extrahieren.

1. Der AND Operator

Der AND-Operator wird in SQL verwendet, um zusätzliche Bedingungen zu einer SQL-Abfrage hinzuzufügen. Alle Bedingungen, die durch den AND-Operator verbunden sind, müssen wahr sein, damit die Zeile im Ergebnisset enthalten ist.

Beispiel:

Angenommen, wir haben eine Tabelle namens Mitarbeiter und wir möchten alle Einträge abrufen, bei denen das Gehalt größer als 50000 ist UND die Abteilung gleich „IT“ ist.

SELECT * FROM Mitarbeiter
WHERE Gehalt > 50000 AND Abteilung = 'IT';

Jeder Eintrag, der im Ergebnisset erscheint, erfüllt beide Bedingungen.

2. Der OR Operator

Im Gegensatz dazu erfordert der OR-Operator nur, dass mindestens eine der Bedingungen wahr ist, um die Zeile im Ergebnisset zu enthalten.

Beispiel:

Wenn wir alle Einträge aus der Tabelle Mitarbeiter abrufen möchten, bei denen entweder das Gehalt größer als 50000 ist ODER die Abteilung „IT“ ist, würden wir folgende Abfrage verwenden:

SELECT * FROM Mitarbeiter
WHERE Gehalt > 50000 OR Abteilung = 'IT';

Jeder Eintrag, der im Ergebnisset erscheint, erfüllt mindestens eine der beiden Bedingungen.

Kombination von AND & OR

AND und OR können in derselben Abfrage verwendet werden, um noch spezifischere Abfragen zu erstellen. In diesem Fall ist es oft klug, Klammern zu verwenden, um sicherzustellen, dass die Logik wie beabsichtigt abläuft.

Beispiel:

Wenn wir alle Einträge aus der Tabelle Mitarbeiter abrufen möchten, bei denen das Gehalt größer als 50000 ist UND entweder die Abteilung „IT“ ODER „HR“ ist, würden wir schreiben:

SELECT * FROM Mitarbeiter
WHERE Gehalt > 50000 AND (Abteilung = 'IT' OR Abteilung = 'HR');

Die AND und OR Operatoren sind starke Werkzeuge, um präzise und effektive SQL-Abfragen zu erstellen. Durch ihre Verwendung können Datenanalysten und -entwickler spezifische Daten aus einer Datenbank extrahieren und dabei mehrere Bedingungen berücksichtigen, was die Datenanalyse deutlich erleichtert und verfeinert. Bei der Kombination dieser Operatoren ist jedoch Vorsicht geboten, um sicherzustellen, dass die Abfrage wie beabsichtigt funktioniert und die erwarteten Ergebnisse liefert.

Der SQL IN Operator, BETWEEN Befehl, und LIKE Befehl

Die SQL-Sprache bietet eine Vielzahl an Operatoren und Befehlen, um Daten aus Datenbanken effizient und flexibel abzurufen. Hier möchten wir uns auf drei spezielle Befehle konzentrieren: IN, BETWEEN und LIKE. Diese erlauben es, Abfragen auf eine präzise und benutzerfreundliche Weise zu gestalten.

1. SQL IN Operator

Definition:

Der IN Operator ermöglicht es, mehrere Werte in einer WHERE-Klausel zu spezifizieren. Er wird oft verwendet, um eine Liste von Werten zu prüfen und ein Ergebnis zurückzugeben, wenn ein Treffer vorliegt.

Beispiel:

Stellen Sie sich eine Tabelle Mitarbeiter vor, und Sie möchten die Daten von Mitarbeitern abrufen, die in den Abteilungen ‚IT‘, ‚HR‘ oder ‚Finanzen‘ arbeiten.

SELECT * FROM Mitarbeiter
WHERE Abteilung IN ('IT', 'HR', 'Finanzen');

Dieser Operator kann oft als eine kompaktere Alternative zum OR Operator verwendet werden.

2. SQL BETWEEN Befehl

Definition:

Der BETWEEN Befehl wird verwendet, um Werte innerhalb eines bestimmten Bereichs abzurufen. Er ist besonders nützlich, wenn man mit Zahlen- oder Datumsbereichen arbeitet.

Beispiel:

Wenn Sie alle Mitarbeiter aus der Mitarbeiter Tabelle abrufen möchten, deren Gehalt zwischen 50000 und 70000 liegt, nutzen Sie:

SELECT * FROM Mitarbeiter
WHERE Gehalt BETWEEN 50000 AND 70000;

3. SQL LIKE Befehl

Definition:

Der LIKE Befehl wird verwendet, um nach einem bestimmten Muster in einer Spalte zu suchen. Hierbei können Wildcard-Zeichen verwendet werden: % repräsentiert null, ein oder mehrere Zeichen, und _ repräsentiert ein einzelnes Zeichen.

Beispiel:

Wenn Sie alle Mitarbeiter finden möchten, deren Namen mit „A“ beginnen, würden Sie schreiben:

SELECT * FROM Mitarbeiter
WHERE Name LIKE 'A%';

Wenn Sie alle Mitarbeiter finden möchten, deren Namen das Zeichen „a“ an zweiter Stelle haben, verwenden Sie:

SELECT * FROM Mitarbeiter
WHERE Name LIKE '_a%';

Zusammenfassung

  • IN ist effektiv, wenn Sie nach einer spezifischen Liste von Werten suchen.
  • BETWEEN ist Ihr Go-to-Befehl für die Suche innerhalb eines bestimmten Bereichs von Werten.
  • LIKE bietet eine flexible Möglichkeit, nach Mustern in Textfeldern zu suchen.

Die effektive Anwendung dieser SQL-Operatoren und Befehle ermöglicht es, komplexe und zielgerichtete Abfragen auf Datenbanken auszuführen und dabei effizient und präzise die gewünschten Daten zu extrahieren. Sie können auch miteinander kombiniert werden, um noch spezifischere Abfragen zu entwickeln und somit die Datenanalyse zu vertiefen.

Wie hat dir der Artikel gefallen?

Vielen Dank für dein Feedback!
Über Frank 70 Artikel

Ich bin Frank, Data Warehouse und BI-Entwickler mit langjähriger Expertise in diesem Bereich. Ich verfüge über mehr als 20 Jahre Berufserfahrung im DWH Umfeld. Das Analysieren und Interpretieren von Zahlen, Daten und Fakten ist meine große Leidenschaft, aus diesem Grunde ist auch diese Seite hier entstanden.

Hinterlasse jetzt einen Kommentar

Kommentar hinterlassen

E-Mail Adresse wird nicht veröffentlicht.


*