A SELECT utasítás a Microsoft Access adatbázismotort arra utasítja, hogy az adatbázisból származó adatokat rekordkészlet formájában adja vissza.
Szintaxis
SELECT [predikátum] { * | tábla.* | [tábla.]mező1 [AS alias1] [, [tábla.]mező2 [AS alias2] [, ...]]}
FROM tábla kifejezés [, ...] [IN külső adatbázis]
[WHERE... ]
[GROUP BY... ]
[HAVING... ]
[ORDER BY... ]
[WITH OWNERACCESS OPTION]
A SELECT utasítás az alábbi részekből áll:
Rész |
Leírás |
predikátum |
A következő predikátumok egyike: ALL, DISTINCT, DISTINCTROW vagy TOP. A predikátum a visszakapott rekordok számának korlátozására használható. Ha egyik sincs megadva, az alapértelmezett predikátum az ALL. |
* |
Használatával a megadott tábla vagy táblák minden mezőjét kijelöli. |
tábla |
A kiválasztandó rekordok mezőit tartalmazó tábla neve. |
mező1, mező2 |
A lekérni kívánt adatokat tartalmazó mezők nevei. Ha több mezőt jelöl meg, az adatok lekérése a megadás sorrendjében történik. |
alias1, alias2 |
A táblák eredeti oszlopnevei helyett használandó oszlopfejlécek. |
tábla kifejezés |
A lekérni kívánt adatokat tartalmazó tábla vagy táblák neve. |
külső adatbázis |
A tábla kifejezésben megadott táblákat tartalmazó adatbázis neve, ha a táblák nem az aktuális adatbázisban vannak. |
Megjegyzések
A művelet végrehajtásakor a Microsoft Access adatbázismotor megkeresi a megadott tábla vagy táblák kiválasztott oszlopait, kiválasztja a feltételeknek megfelelő sorokat, majd a megadott feltételek szerint sorba rendezi vagy csoportosítja őket.
A SELECT utasítások nem módosítják az adatbázisban tárolt adatokat.
A SELECT általában az SQL-utasítás első szava. A legtöbb SQL-utasítás vagy SELECT vagy SELECT...INTO utasítás.
A SELECT utasítás minimális szintaxisa:
SELECT mezők FROM tábla
Csillagot (*) használva az adott tábla minden mezőjét kiválaszthatja. Az alábbi példával az Employees (alkalmazottak) tábla összes mezőjét kiválaszthatja:
SELECT * FROM Employees;
Ha a FROM záradékban meghatározott nevű mezők valamelyike több táblában is megtalálható, a mező neve elé írja be a tábla nevét és a . (pont) operátort. A következő példában a Department (részleg) mező mind az Employees (alkalmazottak), mind a Supervisors (felügyelők) táblában megtalálható. Az SQL-utasítás az Employees táblában szereplő részlegeket és a Supervisors táblában szereplő felügyelőneveket választja ki:
SELECT Employees.Department, Supervisors.SupvName FROM Employees INNER JOIN Supervisors WHERE Employees.Department = Supervisors.Department;
Recordset objektum létrehozásakor a Microsoft Access adatbázismotor a tábla mezőnevét használja a Field objektum neveként a Recordset objektumban. Ha másik mezőnevet szeretne használni, vagy a mező létrehozására használt kifejezés nem utal a névre, használja az AS foglalt szót. A következő példában a visszaadott Field objektum a Birth (születés) nevet kapja a Recordset objektumban:
SELECT BirthDate AS Birth FROM Employees;
Ha az összegző függvények vagy lekérdezések használatakor visszakapott Field objektumok neve nem egyértelmű vagy már létezik, az AS záradékkal kell átneveznünk a Field objektumokat. A következő példában az eredményül kapott Field objektumnak a HeadCount (létszám) nevet adjuk a Recordset objektumban:
SELECT COUNT(EmployeeID) AS HeadCount FROM Employees;
A SELECT utasításban egyéb záradékok használatával tovább korlátozhatja és rendezheti a visszaadott adatokat. A záradékokról további információk a Súgó megfelelő témaköreiben találhatók.