'n Databasisnavraag onttrek data uit 'n databasis en formateer dit in 'n mens-leesbare vorm. 'n Navraag moet geskryf word in die sintaksis wat die databasis vereis - gewoonlik 'n variant van Structured Query Language.
Die elemente van 'n SQL-navraag
SQL-navrae wat Data Manipulation Language gebruik (die stel SQL-stellings wat toegang tot data verkry of wysig, in teenstelling met die Data Definition Language wat die struktuur van die databasis self wysig) bestaan uit vier blokke, waarvan die eerste twee nie opsioneel nie.
'n SQL-navraag volg op 'n minimum die volgende vorm:
kies X uit Y;
Hier identifiseer die geselekteerde sleutelwoord watter inligting jy wil vertoon en die van-sleutelwoord identifiseer waar daardie data vandaan kom en hoe daardie databronne met mekaar assosieer. Opsioneel, 'n waar-stelling stel beperkende kriteria, en groepeer volgens en volgorde volgens stellings assosieer waardes en vertoon dit in 'n spesifieke volgorde.
Byvoorbeeld:
SELECT emp.ssn, emp.last_name, dept.dept..active_flag='Y'
ORDER BY 2 ASC;
Hierdie navraag lei tot 'n rooster wat die sosiale sekerheidsnommer, 'n werknemer se naam en die naam van die werknemer se departement-in daardie kolom-volgorde van die werknemers- en afdelingstabelle toon. Die werknemerstabel beheer, so dit sal slegs afdelingsname wys wanneer daar 'n ooreenstemmende afdelingnommerveld in beide tabelle is ('n linkerbuiteverbinding is 'n metode om tabelle te koppel waarin die linkerkantste tabel alle resultate en slegs ooreenstemmende resultate van regs af wys -sydige tabel verskyn). Verder wys die rooster net werknemers wie se aktiewe vlag op Y gestel is, en die resultaat word in stygende volgorde volgens die departement se naam gesorteer.
Maar al hierdie dataverkenning begin met die kiesstelling.
Die SQL SELECT-stelling
SQL gebruik 'n SELECT-stelling om spesifieke data te kies, of te onttrek.
Beskou 'n voorbeeld gebaseer op die Northwind-databasis wat gereeld met databasisprodukte as 'n tutoriaal gestuur word. Hier is 'n uittreksel uit die databasis se werknemerstabel:
Werknemer-ID | Van | Voornaam | Titel | Adres | Stad | Streek |
---|---|---|---|---|---|---|
1 | Davolio | Nancy | Verkoopsverteenwoordiger | 507 20th Ave. E. | Seattle | WA |
2 | Voller | Andrew | visepresident, verkope | 908 W. Capital Way | Tacoma | WA |
3 | Leverling | Janet | Verkoopsverteenwoordiger | 722 Moss Bay Blvd. | Kirkland | WA |
Om 'n werknemer se naam en titel van die databasis terug te gee, sal die SELECT-stelling iets soos volg lyk:
KIES Voornaam, Van, Titel VAN Werknemers;
Dit sou terugkeer:
Voornaam | Van | Titel |
---|---|---|
Nancy | Davolio | Verkoopsverteenwoordiger |
Andrew | Voller | visepresident, verkope |
Janet | Leverling | Verkoopsverteenwoordiger |
Om die resultate verder te verfyn, kan jy 'n WHERE-klousule byvoeg:
KIES Voornaam, Van VAN WerknemersWHERE Stad='Tacoma';
Dit gee die Voornaam en Van van enige werknemer van Tacoma terug:
Voornaam | Van |
---|---|
Andrew | Voller |
SQL gee data terug in 'n ry-en-kolomvorm wat soortgelyk is aan Microsoft Excel, wat dit maklik maak om te sien en mee te werk. Ander navraagtale kan data as 'n grafiek of grafiek terugstuur.
Die krag van navrae
'n Databasis het die potensiaal om komplekse neigings en aktiwiteite te openbaar, maar hierdie krag word slegs deur die gebruik van die navraag ingespan. 'n Komplekse databasis bestaan uit baie tabelle wat 'n groot hoeveelheid data stoor. 'n Navraag laat jou toe om die data in 'n enkele tabel te filtreer sodat jy dit makliker kan ontleed.
Navrae kan ook berekeninge op jou data uitvoer of databestuurstake outomatiseer. Jy kan ook opdaterings van jou data nagaan voordat jy dit aan die databasis oordra.
Gereelde Vrae
Hoe bevraagteken jy 'n Access-databasis?
Om 'n navraag in Microsoft Access te skep, gaan na Create > Query WizardKies dan 'n navraagtipe, soos Simple Query Wizard > OK Kies 'n tabel uit die aftrekkieslys > kies jou velde en die tipe van resultate wat jy wil hê > Finish
Wat is gestruktureerde navraagtaal?
Structured Query Language, of SQL, is 'n programmeertaal wat in databestuurstelsels en relasionele databasisse gebruik word. Omdat dit maklik is om te gebruik en effektief is, is dit geïnkorporeer in kommersiële databasisse soos MySQL, Sybase, Postgres, Oracle, en meer.
Hoe optimaliseer jy 'n SQL-navraag?
Om 'n SQL-navraag te optimaliseer en dit so doeltreffend moontlik te maak, gebruik die SELECT-stelling om die databasis opdrag te gee om slegs relevante inligting te bevraagteken. Vermy die gebruik van die SELECT DISTINCT-stelling, wat baie verwerkingskrag verg. Gebruik jokertekens slegs aan die einde van state, en gebruik die LIMIT-stelling om slegs die gespesifiseerde aantal rekords terug te gee.