Die SELECT-Anweisung weist das Microsoft Access-Datenbankmodul an, Informationen aus einer Datenbank als Datensatzgruppe zurückzugeben.
Syntax
SELECT [Prädikat] { * | Tabelle.* | [Tabelle.]Feld1 [AS Alias1] [, [Tabelle.]Feld2 [AS Alias2] [, ...]]}
FROM Tabellenausdruck [, ...] [IN Externe_Datenbank]
[WHERE... ]
[GROUP BY... ]
[HAVING... ]
[ORDER BY... ]
[WITH OWNERACCESS OPTION]
Die SELECT-Anweisung setzt sich wie folgt zusammen:
Element |
Beschreibung |
Prädikat |
Eines der folgenden Prädikate: ALL, DISTINCT, DISTINCTROW oder TOP. Sie verwenden das Prädikat, um die Anzahl der zurückgegebenen Datensätze einzuschränken. Ohne Angabe gilt als Standardwert ALL. |
* |
Gibt an, dass alle Felder aus der oder den angegebenen Tabellen ausgewählt werden. |
Tabelle |
Der Name der Tabelle, die die Felder enthält, aus der die Datensätze ausgewählt werden. |
Feld1, Feld2 |
Die Namen der Felder, die die abzurufenden Daten enthalten. Wenn Sie mehr als ein Feld angeben, werden die Daten in der angegebenen Reihenfolge abgerufen. |
Alias1, Alias2 |
Die Namen, die als Spaltenüberschriften anstelle der eigentlichen Spaltennamen in Tabelle verwendet werden sollen. |
Tabellenausdruck |
Der Name/die Namen der Tabelle/n, die die abzurufenden Daten enthalten. |
Externe_Datenbank |
Der Name der Datenbank, die die Tabellen in Tabellenausdruck enthält, sofern sich diese nicht in der aktuellen Datenbank befinden. |
Hinweise
Zum Durchführen dieses Vorgangs durchsucht das Microsoft Access-Datenbankmodul die angegebenen Tabellen, extrahiert die ausgewählten Spalten, wählt die Zeilen aus, die dem Kriterium entsprechen, und sortiert oder gruppiert die resultierenden Zeilen in der angegebenen Reihenfolge.
Mit SELECT-Anweisungen werden die Daten in der Datenbank nicht geändert.
SELECT ist normalerweise das erste Wort in einer SQL-Anweisung. Bei den meisten SQL-Anweisungen handelt es sich entweder um SELECT- oder SELECT...INTO-Anweisungen.
Die minimale Syntax für eine SELECT-Anweisung lautet:
SELECT Felder FROM Tabelle
Sie können einen Stern (*) verwenden, um alle Felder in einer Tabelle auszuwählen. Mit dem folgenden Beispiel werden alle Felder in der Tabelle "Employees" ausgewählt:
SELECT * FROM Employees;
Wenn ein Feldname in mehr als einer Tabelle in der FROM-Klausel vorhanden ist, stellen Sie den Tabellennamen und den Operator . (Punkt) voran. Im folgenden Beispiel ist das Feld "Department" sowohl in der Tabelle "Employees" als auch in der Tabelle "Supervisors" vorhanden. Die SQL-Anweisung wählt die Abteilungen aus der Tabelle "Employees" und die Namen der Vorgesetzten aus der Tabelle "Supervisors" aus:
SELECT Employees.Department, Supervisors.SupvName FROM Employees INNER JOIN Supervisors WHERE Employees.Department = Supervisors.Department;
Wenn ein Recordset-Objekt erstellt wird, verwendet das Microsoft Access-Datenbankmodul den Feldnamen der Tabelle als Feld-Objektnamen im Recordset-Objekt. Wenn Sie einen anderen Feldnamen verwenden möchten oder wenn der Name von dem Ausdruck nicht impliziert wird, der für die Erstellung des Felds verwendet wird, verwenden Sie das Reserviertes Wort AS. Im folgenden Beispiel wird der Titel "Birth" zur Benennung des zurückgegebenen Feld-Objekts im resultierenden Recordset-Objekt verwendet:
SELECT BirthDate AS Birth FROM Employees;
Sobald Sie Aggregatfunktionen oder Abfragen verwenden, die mehrdeutige oder doppelte Feld-Objektnamen zurückgeben, müssen Sie die AS-Klausel verwenden, um einen alternativen Namen für das Feld-Objekt anzugeben. Im folgenden Beispiel wird der Titel "HeadCount" zur Benennung des zurückgegebenen Feld-Objekts im resultierenden Recordset-Objekt verwendet:
SELECT COUNT(EmployeeID) AS HeadCount FROM Employees;
Sie können die anderen Klauseln in einer SELECT-Anweisung verwenden, um die zurückgegebenen Daten weiter einzuschränken und zu strukturieren. Weitere Informationen finden Sie im Hilfethema zu der Klausel, die Sie verwenden möchten.