SQL-Befehle SELECT

Wir bieten Ihnen hier ein einfaches Tool zur Erstellung eines SQL Select Befehls für einen Datenbankabfrage.

Mit SELECT können Werte aus einer Tabelle ausgelesen werden. Aufbau :

SELECT
DISTINCT | ALL | * | Spalte1 [,Spalte2][,...] | Ausdruck
FROM Tabelle
WHERE Bedingung
GROUP BY Spalte1 [,Spalte2][,...]
ORDER BY Spalte1 [,Spalte2][,...] [ASC|DESC]

Wie lese ich Werte aus?

Name der Tabelle  

Wie lese ich alle Werte eines oder mehrerer Felder aus einer Tabelle aus?

Name der Tabelle  
Name der Felder (durch Komma getrennt)  

Wie lese ich Werte eines oder mehrerer Felder ohne mehrfach enthaltene Zeilen aus einer Tabelle aus?

Name der Tabelle  
Name der Felder (durch Komma getrennt)  

Wie lese ich bestimmte Werte aus einer Tabelle aus?

Name der Tabelle  
Name der Felder  
Feld das geprüft werden soll  
Nach welcher Bedingung soll geprüft werden?  
Auf welchen Wert soll geprüft werden?  

Wie lese ich Werte gruppiert aus einer Tabelle aus?

Name der Tabelle  
Name der Felder (durch Komma getrennt)  
Feld das gruppiert werden soll  

Wie lese ich Werte aus einer Tabelle aus und sortiere sie aufsteigend?

Name der Tabelle  
Name der Felder (durch Komma getrennt)  
Feld das sortiert werden soll  

Wie lese ich Werte aus einer Tabelle aus und sortiere sie absteigend?

Name der Tabelle  
Name der Felder (durch Komma getrennt)  
Feld das sortiert werden soll  

Stell uns deine Frage. Wir antworten dir schnellstens...

Was ist SQL?

Die Abkürzung steht für Structured Query Language. Das heißt auf Deutsch strukturierte Abfrage-Sprache. Sie findet bei der Organisation von Tabellen Anwendung und dient der Verwaltung, Bearbeitung und dem Abfragen von Informationen. Mit ihrer Hilfe generieren Sie Befehle, um eine gewünschte Aktion durchzuführen. Relationale Datenbanken sind verschiedene Tabellen, die miteinander in Beziehung stehen. Sie sind durch Spalten und Zeilen definiert. Jedem Feld sind eindeutige Koordinaten zugeordnet. In einer Adressdatei ist Friederike Kuhn beispielsweise das Feld in der Spalte „Name“ in der fünften Zeile.

Die Sprache stammt aus den 70ern. Oracle kommerzialisierte sie erstmals in einem Produkt. Daten sind langlebig. Deshalb ist die Weiterentwicklung von SQL bedeutsam. Sie hat sich als Programmiersprache für den Datenzugriff globalisiert und definiert, was zu tun ist. Das Wie ist durch den Datenserver festgelegt. Die Sprache umfasst über 100 teilweise komplexe Befehle. SQL Befehle Select gehören zu den grundlegenden Anweisungen der Programmiersprache.

In ihrem Gebrauch unterscheiden Sie bei Wörtern die Großbuchstaben nicht von den Kleinbuchstaben. Der Begriff „Tabelle“ ist mit dem Wort „tabelle“ identisch. Einfache Anführungszeichen umfassen Datumswerte und Strings. Mehrere Anweisungen sind durch einen Strichpunkt getrennt und die Sprache behandelt Zeilenumbrüche gleichwertig mit Leerzeilen.

Wozu dient der Befehl Select?

Die SQL Befehle Select dienen dazu, verschiedene Datensätze auszuwählen, ohne jeden einzelnen anzuklicken. Sie sind die mächtigsten Anweisungen der Programmiersprache. Der Befehl ist schnell und flexibel anwendbar was den Erfolg von SQL mitprägte. So sieht seine Struktur aus:

select … listet Ausdrücke oder Attribute mit Funktionen und Attributen auf
from … Auflistung der involvierten Tabellen
where … zeigt die Auswahlbedingung in den Datensätzen an
group by … fasst Datensätze in Gruppen zusammen
having … Auswahlbedingung über die Gruppe
order by … zeigt Ausdrücke oder Attribute für die Ausgabesortierung an

Die Select-Anweisung stellt die Informationen in Form einer virtuellen Tabelle zur Verfügung, auch Recordset genannt. Set steht für Menge und Record für Datensätze. Es geht um die Menge der ausgewählten Daten aus den beteiligten Tabellen. Sie existieren temporär und unterliegen nach dem Ausführen des Befehls der Verwerfung. SQL Befehle Select ohne Ergänzung führen dazu, dass die Angaben auf dem Bildschirm erscheinen. Mit Select … Into … From … kopieren Sie diese in eine neue Tabelle. Mit Insert Into … Select … fügen Sie die Informationen einer bestehenden Tabelle zu.

Tipps zum Umgang mit Select

Der SQL-Parser identifiziert Spalten dank Alias-Namen für Tabellen schneller. Schließen Sie Ausdrücke mit Sonder- oder Leerzeichen in eckige Klammern ein. Nach Select … Into … From … erhält die ursprüngliche Tabelle eine automatisch hochzählende ID. Der Spaltentyp entsteht in der Zieltabelle ebenfalls. Um dies zu vermeiden, fügen Sie der Identitätsspalte eine 0 bei und notieren den Spaltenname als Alias. Beim Sortieren auf dem MS-SQLServer ist es möglich, den Aliasnamen in der ORDER BY-Klausel anzugeben. Beachten Sie, dass Sie diese nach einer Rechenoperation erneut notieren, da Access den Namen so nicht versteht.

Wie funktioniert der Rechner für SQL Befehle Select?

Er generiert sieben Fälle von Auswahlverfahren in einer Tabelle. Sie beginnen mit einer Frage. Die notwendigen Eingaben zur Beantwortung folgen in den nächsten Zeilen. In der Einführung finden Sie die verschiedenen Kombinationen zu Select:
Mit SELECT können Werte aus einer Tabelle ausgelesen werden. Aufbau:

SELECT
DISTINCT | ALL | * | Spalte1 [,Spalte2][,…] | Ausdruck
FROM Tabelle
WHERE Bedingung
GROUP BY Spalte1 [,Spalte2][,…]
ORDER BY Spalte1 [,Spalte2][,…] [ASC|DESC]

Erklärung und Beispiele der diversen Anwendungen

Der einfachste Fall einer Select-Anwendung ist die Auswahl aller Datensätze in einer Tabelle. Die Frage lautet: Wie lese ich Werte aus? Dazu füllen Sie den Namen der Tabelle neben „Name der Tabelle“ ein. Sie haben eine Liste mit Bestellungen, die sie leeren zu brauchen. Sie füllen „bestellungen“ ein. Mit einem Klick auf das Kästchen „Generieren“ erscheint im Feld:
SELECT * FROM bestellungen

Die zweite Anwendung ist komplexer. Es geht darum, einzelne Komponenten aus einer Tabelle auszuwählen. Sie wollen aus Ihrer Liste der Bestellungen alle Kunden mit den Namen Keller und Frieden auswählen. Die dazugehörige Frage „Wie lese ich alle Werte eines oder mehrerer Felder aus einer Tabelle aus?“ bringt zwei Zeilen zum Beantworten mit sich. Neben den ersten Begriff „Name der Tabelle“ tippen Sie „bestellungen“. Unterhalb führen Sie alle Felder aus mit Bezeichnungen, die Sie zu löschen gedenken.

Sie benötigen die Einträge mit den Namen Keller und Frieden nicht mehr. Bevor Sie diese löschen wählen Sie sie aus. Schreiben Sie die Namen durch ein Komma getrennt hin: „keller, frieden“. Folgendes erscheint im Ergebnis-Rechteck:
SELECT keller, frieden FROM bestellungen

Der nächste Fall der SQL Befehle Select ist folgender: Wie lesen Sie Werte eines oder mehrere bestimmter Felder ohne mehrfach enthaltene Zeilen aus einer Tabelle aus? Wie im oberen Beispiel überschreiben Sie zuerst „tabellenname“ mit bestellungen. Die Worte „keller, frieden“ durch Komma getrennt geben Sie neben dem Begriff „Name der Felder (durch Komma getrennt)“ ein. Als Ergebnis erscheint: SELECT DISTINCT keller, frieden FROM adressen.

Bei der Frage „Wie lese ich bestimmte Werte aus einer Tabelle aus?“ geht es um Zeilen, die gewisse Bedingungen erfüllen. Sie suchen die Namen der Kunden, welche Bestellungen über 30 Euro tätigten. Füllen Sie die Felder folgendermaßen aus:

Name der Tabelle                                  bestellungen
Name der Felder                                          name
Feld das geprüft werden soll                          preise
Nach welcher Bedingung soll geprüft werden? >
Auf welchen Wert soll geprüft werden?        30

Als Ergebnis erscheint:

SELECT name FROM bestellungen WHERE preise > ’30‘

Gruppieren und Sortieren

Um Werte zu gruppieren, beantworten Sie die Frage „Wie lese ich Werte gruppiert aus einer Tabelle aus?“. Sie lesen aus den Bestellungen alle Namen der Kunden aus Hamburg aus. Die Tabelle sieht so aus:

Name der Tabelle                                      bestellungen
Name der Felder (durch Komma getrennt)          ort
Feld das gruppiert werden soll                    hamburg

Der Befehl zu dieser Auswahl lautet SELECT ort FROM bestellungen GROUP BY hamburg. Nach der Anwendung erscheint eine Tabelle, die die Anzahl Kunden aus Hamburg angibt.
Hamburg            4

Eine weitere Möglichkeit der Anwendung des Select-Befehls ist das auf- und absteigende Sortieren. Nach beiden Fragen geben Sie als Tabellenname Bestellungen ein. Feldname und Feld, dass sortiert werden soll ist „preise“. Im Ergebnisfeld erscheinen die Formeln.

Werte aufsteigend sortiert auslesen

SELECT preise FROM bestellungen ORDER BY preise ASC

Werte absteigend sortiert auslesen
SELECT preise FROM bestellungen ORDER BY preise DESC

ASC ist der Code für aufsteigend, DESC für absteigend. Damit sortieren Sie die Höhe der Bestellungen in der gewünschten Form.

Wer benutzt den Rechner?

Er dient Personen, die ein Geschäft führen zur Organisation von Tabellen der Kundenadministration. Für die Übersicht im Privathaushalt ist das Arbeiten mit Tabellen und SQL ebenfalls geeignet.

Häufig gestellte Fragen

Was ist ein Select Befehl?

Welche unterschiedlichen Select Befehle gibt es?

Häufig gestellte Fragen

Was ist ein Select Befehl?

Der Select-Befehl in SQL (Structured Query Language) ist der einzige Befehl für den lesenden Zugriff auf die Datenbank. Wie alle Befehle bei relationalen Datenbanksystemen ist der Befehl ein sogenannter nicht-prozeduraler Befehl, dies bedeutet, dass definiert wird, was man finden will und nicht, wie bzw. in welchem Ablauf man etwas finden möchte.
Der Befehl ist sehr mächtig und kann auch sehr komplex werden.

Welche unterschiedlichen Select Befehle gibt es?

Es gibt nur einen Select Befehl, der aber je nach Aufgabenstellung sehr verschieden aussehen kann. Die einfachste Variante ist der Befehl "Select * From Tabellenname".
In dieser Ausprägung werden von der Tabelle mit dem Namen "Tabellennamen" alle Spalten in der Reihenfolgen, wie sie bei dem Anlegen der Tabelle definiert wurden, ausgegeben und zwar alle Zeilen, die in der Tabelle enthalten sind in einer willkürlichen Reihenfolge.
Um die Reihenfolge zu beeinflussen, kann der Befehl um die Klausel "Order by Spaltenname" ergänzt werden, wobei es möglich ist, eine auf- oder absteigende Reihenfolge zu verlangen (ASC/DESC).
Sollen nur ausgewählte Zeilen der Tabelle zurückgegeben werden, gibt es die Bedingungsklausel "Where Spaltenname Bedingung". Die Bedingung kann sein, daß der Spaltenwert gleich, kleiner, größer als ein Wert geben oder zwischen zwei gegebenen Werten liegt: "Where Spaltenname Between unterer Wert And oberer Wert". Dabei sind die Werte abhängig vom Datentyp der Spalte. Ist die Spalte beispielsweise als Zahl definiert, sind die Vergleichswerte auch Zahlen, ist der Datentyp als Datum angegeben, müssen die Vergleichswerte auch vom Typ Datum sein. Auch die Verwendung von Funktionen ist möglich, so daß in den Bedingungen eine hohe Flexibilität möglich ist.
So wie die Auswahl und Anordnung von Zeilen möglich ist, ist auch die Auswahl und Anordnung von Spalten möglich. Das erfolgt, indem in dem Select Befehl nach dem Select an Stelle des Sterns (*) die Spaltennamen in der gewünschten Reihenfolge definiert werden. Auch hier können Funktionen verwandt werden.

Bisher wurde davon ausgegangen, daß nur auf eine einzelne Tabelle zugegriffen wird. In vielen Fällen werden jedoch Tabellen miteinander kombiniert. Im Select Befehl erfolgt das, indem nach der From-Klausel mehr als ein Tabellennamen angegeben wird. Hierbei ist dann zu beachten, dass in der Where-Klausel die Bedingungen angegeben werden, die eine korrekte Verknüpfung der Tabellen durchführen.

Eine noch größere Komplexität erhält der Select Befehl durch die Angabe der Group By Klausel, die den Einsatz von Aggregationsfunktionen ermöglicht. Dann sind auch noch Bedingungen auf Aggregatfunktionen möglich, die durch die Having Klausel eingeleitet werden.