DQL-SQL: Unterschied zwischen den Versionen

Aus FI-Wiki
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
== Data Query Language (DQL) in SQL ==
Die '''DQL (Data Query Language)''' dient ausschließlich der '''Datenabfrage'''. Im Zentrum steht der Befehl `SELECT`, mit dem Daten aus einer oder mehreren Tabellen '''ausgelesen''', aber '''nicht verändert''' werden.


Die DQL dient ausschließlich der **Datenabfrage**. Im Zentrum steht der Befehl `SELECT`, mit dem Daten aus einer oder mehreren Tabellen **ausgelesen**, aber **nicht verändert** werden.
== SELECT – Grundstruktur ==
 
=== SELECT – Grundstruktur ===


<syntaxhighlight lang="sql">
<syntaxhighlight lang="sql">
Zeile 19: Zeile 17:
</syntaxhighlight>
</syntaxhighlight>


=== SELECT * – Alle Spalten abfragen ===
== SELECT * – Alle Spalten abfragen ==


<syntaxhighlight lang="sql">
<syntaxhighlight lang="sql">
Zeile 25: Zeile 23:
</syntaxhighlight>
</syntaxhighlight>


=== WHERE – Bedingungen anwenden ===
== WHERE – Bedingungen anwenden ==


<syntaxhighlight lang="sql">
<syntaxhighlight lang="sql">
Zeile 32: Zeile 30:
</syntaxhighlight>
</syntaxhighlight>


=== ORDER BY – Sortieren ===
== ORDER BY – Sortieren ==


<syntaxhighlight lang="sql">
<syntaxhighlight lang="sql">
Zeile 46: Zeile 44:
</syntaxhighlight>
</syntaxhighlight>


=== DISTINCT – mehrfach vorkommende Werte entfernen ===
== DISTINCT – mehrfach vorkommende Werte entfernen ==


<syntaxhighlight lang="sql">
<syntaxhighlight lang="sql">
Zeile 53: Zeile 51:
</syntaxhighlight>
</syntaxhighlight>


=== LIMIT – Anzahl der Zeilen begrenzen ===
== LIMIT – Anzahl der Zeilen begrenzen ==


<syntaxhighlight lang="sql">
<syntaxhighlight lang="sql">
Zeile 62: Zeile 60:
(Je nach System z. B. `TOP` in SQL Server, `FETCH FIRST` in Oracle)
(Je nach System z. B. `TOP` in SQL Server, `FETCH FIRST` in Oracle)


=== JOIN – Tabellen verknüpfen ===
== JOIN – Tabellen verknüpfen ==


<syntaxhighlight lang="sql">
<syntaxhighlight lang="sql">
Zeile 70: Zeile 68:
</syntaxhighlight>
</syntaxhighlight>


=== GROUP BY – Gruppierung ===
== GROUP BY – Gruppierung ==


<syntaxhighlight lang="sql">
<syntaxhighlight lang="sql">
Zeile 78: Zeile 76:
</syntaxhighlight>
</syntaxhighlight>


=== HAVING – Bedingung auf Gruppen ===
== HAVING – Bedingung auf Gruppen ==


<syntaxhighlight lang="sql">
<syntaxhighlight lang="sql">

Version vom 5. Januar 2026, 15:04 Uhr

Die DQL (Data Query Language) dient ausschließlich der Datenabfrage. Im Zentrum steht der Befehl `SELECT`, mit dem Daten aus einer oder mehreren Tabellen ausgelesen, aber nicht verändert werden.

SELECT – Grundstruktur

SELECT spaltenname1, spaltenname2
FROM tabellenname
WHERE bedingung;

Beispiel:

SELECT name, email
FROM kunde
WHERE land = 'Deutschland';

SELECT * – Alle Spalten abfragen

SELECT * FROM kunde;

WHERE – Bedingungen anwenden

SELECT * FROM kunde
WHERE name LIKE 'A%';

ORDER BY – Sortieren

SELECT * FROM kunde
ORDER BY name ASC;

Absteigend sortieren:

SELECT * FROM kunde
ORDER BY name DESC;

DISTINCT – mehrfach vorkommende Werte entfernen

SELECT DISTINCT land
FROM kunde;

LIMIT – Anzahl der Zeilen begrenzen

SELECT * FROM kunde
LIMIT 10;

(Je nach System z. B. `TOP` in SQL Server, `FETCH FIRST` in Oracle)

JOIN – Tabellen verknüpfen

SELECT k.name, b.bestellnr
FROM kunde k
JOIN bestellung b ON k.kundennr = b.kundennr;

GROUP BY – Gruppierung

SELECT land, COUNT(*) AS anzahl_kunden
FROM kunde
GROUP BY land;

HAVING – Bedingung auf Gruppen

SELECT land, COUNT(*) AS anzahl
FROM kunde
GROUP BY land
HAVING COUNT(*) > 5;