De Structured Query Language biedt databasegebruikers een krachtig en flexibel mechanisme voor het ophalen van gegevens: de SELECT-instructie. In dit artikel bekijken we de algemene vorm van de SELECT-instructie en stellen we samen enkele voorbeelddatabasequery's op. Als dit je eerste kennismaking is met de wereld van de Structured Query Language, wil je deze misschien nog eens bekijken Basisprincipes van SQL alvorens verder te gaan. Als u een geheel nieuwe database wilt ontwerpen, leert u hoe u: databases en tabellen maken in SQL moet een goed startpunt blijken te zijn.
Nu je de basis hebt opgepoetst, gaan we beginnen met onze verkenning van de SELECT-instructie. Net als bij eerdere SQL-lessen, blijven we instructies gebruiken die voldoen aan de ANSI SQL-standaard. U kunt de documentatie voor uw DBMS raadplegen om te bepalen of deze geavanceerde opties ondersteunt die de efficiëntie en/of doeltreffendheid van uw SQL-code kunnen verbeteren.
De algemene vorm van de SELECT-instructie
De algemene vorm van de SELECT-instructie wordt hieronder weergegeven:
KIES select_list
VAN bron
WAAR voorwaarden)
GROEP OP uitdrukking
HEBBEN staat
BESTEL DOOR uitdrukking
De eerste regel van het statement vertelt de SQL-processor dat dit commando a. is KIES verklaring en dat we informatie uit een database willen halen. De select_list stelt ons in staat om het type informatie te specificeren dat we willen ophalen. De VAN clausule in de tweede regel specificeert de specifieke databasetabel(len) die erbij betrokken zijn en de WAAR clausule geeft ons de mogelijkheid om de resultaten te beperken tot die records die voldoen aan de opgegeven voorwaarden). De laatste drie clausules vertegenwoordigen geavanceerde functies die buiten het bestek van dit artikel vallen - we zullen ze in toekomstige SQL-artikelen onderzoeken.
De eenvoudigste manier om SQL te leren is door het voorbeeld. Laten we, met dat in gedachten, eens kijken naar enkele databasequery's. In dit artikel gebruiken we de werknemerstabel uit de fictieve personeelsdatabase van XYZ Corporation om al onze vragen te illustreren. Hier is de hele tabel:
Werknemer-ID |
Achternaam |
Voornaam |
Salaris |
Rapporteert aan |
1 |
Smit |
John |
32000 |
2 |
2 |
scampi |
Sue |
45000 |
NUL |
3 |
Kendall |
Tom |
29500 |
2 |
4 | Jones | Abraham | 35000 | 2 |
5 | Allen | Bill | 17250 | 4 |
6 | Reynolds | Allison | 19500 | 4 |
7 | Johnson | Katie | 21000 | 3 |
Een hele tabel ophalen
De directeur Human Resources van XYZ Corporation ontvangt maandelijks een rapport met salaris- en rapportage-informatie voor elke werknemer van het bedrijf. Het genereren van dit rapport is een voorbeeld van de eenvoudigste vorm van de SELECT-instructie. Het haalt eenvoudig alle informatie op in een databasetabel - elke kolom en elke rij. Hier is de query die dit resultaat zal bereiken:
KIES *
VAN medewerkers.
Vrij eenvoudig, toch? Het sterretje (*) in de select_list is een jokerteken dat wordt gebruikt om de database te informeren dat we informatie willen ophalen uit alle kolommen in de werknemerstabel die zijn geïdentificeerd in de FROM-clausule. We wilden alle informatie in de database ophalen, dus het was niet nodig om een WHERE-clausule te gebruiken om de geselecteerde rijen in de tabel te beperken. Zo zien onze queryresultaten eruit:
Werknemer-ID | Achternaam | Voornaam | Salaris | Rapporteert aan |
1 | Smit | John | 32000 | 2 |
2 | scampi | Sue | 45000 | NUL |
3 | Kendall | Tom | 29500 | 2 |
4 | Jones | Abraham | 35000 | 2 |
5 | Allen | Bill | 17250 | 4 |
6 | Reynolds | Allison | 19500 | 4 |
7 | Johnson | Katie | 21000 | 3 |