En databaseforespørgsel udtrækker data fra en database og formaterer den til en form, der kan læses af mennesker. En forespørgsel skal skrives i den syntaks, databasen kræver - norm alt en variant af Structured Query Language.
Elementerne i en SQL-forespørgsel
SQL-forespørgsler, der bruger Data Manipulation Language (sættet af SQL-sætninger, der tilgår eller ændrer data, i modsætning til Data Definition Language, der ændrer strukturen af selve databasen) består af fire blokke, hvoraf de to første er ikke valgfrit.
En SQL-forespørgsel følger som minimum følgende form:
vælg X fra Y;
Her identificerer det udvalgte søgeord, hvilke oplysninger du ønsker at vise, og fra nøgleordet identificerer, hvor disse data kommer fra, og hvordan disse datakilder forbindes med hinanden. Eventuelt kan en where-sætning angive begrænsende kriterier, og gruppere efter og rækkefølge efter udsagn tilknytte værdier og vise dem i en bestemt rækkefølge.
For eksempel:
VÆLG emp.ssn, emp.last_name, dept.dept.dept_name
FROM medarbejdere emp LEFT YDRE JOIN afdelinger dept
ON emp.dept_no=dept.dept_no
WHERE emp.active_flag='Y'ORDER BY 2 ASC;
Denne forespørgsel resulterer i et gitter, der viser CPR-nummeret, en medarbejders efternavn og medarbejderens afdelingsnavn i den kolonne, som er taget fra medarbejder- og afdelingstabellerne. Medarbejdertabellen styrer, så den vil kun vise afdelingsnavne, når der er et matchende afdelingsnummerfelt i begge tabeller (en venstre ydre joinforbindelse er en metode til at linke tabeller, hvor den venstresidede tabel viser alle resultater og kun matchende resultater fra højre -sidet bord vises). Ydermere viser gitteret kun medarbejdere, hvis aktive flag er sat til Y, og resultatet sorteres i stigende rækkefølge efter afdelingens navn.
Men al denne dataudforskning begynder med select-sætningen.
SQL SELECT-erklæringen
SQL bruger en SELECT-sætning til at vælge eller udtrække specifikke data.
Overvej et eksempel baseret på Northwind-databasen, der ofte leveres med databaseprodukter som en vejledning. Her er et uddrag fra databasens medarbejdertabel:
Medarbejder-ID | Efternavn | Fornavn | Titel | Adresse | City | Region |
---|---|---|---|---|---|---|
1 | Davolio | Nancy | salgsrepræsentant | 507 20th Ave. E. | Seattle | WA |
2 | Fuller | Andrew | Vice President, Sales | 908 W. Capital Way | Tacoma | WA |
3 | Leverling | Janet | salgsrepræsentant | 722 Moss Bay Blvd. | Kirkland | WA |
For at returnere en medarbejders navn og titel fra databasen, vil SELECT-sætningen se sådan ud:
VÆLG Fornavn, Efternavn, Titel FRA medarbejdere;
Det ville vende tilbage:
Fornavn | Efternavn | Titel |
---|---|---|
Nancy | Davolio | salgsrepræsentant |
Andrew | Fuller | Vice President, Sales |
Janet | Leverling | salgsrepræsentant |
For at forfine resultaterne yderligere kan du tilføje en WHERE-sætning:
VÆLG Fornavn, Efternavn FRA medarbejdereWHERE By='Tacoma';
Det returnerer fornavn og efternavn på enhver medarbejder, der er fra Tacoma:
Fornavn | Efternavn |
---|---|
Andrew | Fuller |
SQL returnerer data i en række-og-kolonne-form, der ligner Microsoft Excel, hvilket gør det nemt at se og arbejde med. Andre forespørgselssprog returnerer muligvis data som en graf eller et diagram.
The Power of Queries
En database har potentialet til at afsløre komplekse tendenser og aktiviteter, men denne kraft udnyttes kun gennem brugen af forespørgslen. En kompleks database består af mange tabeller, der gemmer en stor mængde data. En forespørgsel giver dig mulighed for at filtrere dataene i en enkelt tabel, så du nemmere kan analysere dem.
Forespørgsler kan også udføre beregninger på dine data eller automatisere datahåndteringsopgaver. Du kan også gennemgå opdateringer af dine data, før du overfører dem til databasen.
FAQ
Hvordan forespørger du i en Access-database?
For at oprette en forespørgsel i Microsoft Access skal du gå til Create > Query WizardVælg derefter en forespørgselstype, såsom Simple Query Wizard > OK Vælg en tabel fra rullemenuen > vælg dine felter og typen af de ønskede resultater > Finish
Hvad er Structured Query Language?
Structured Query Language, eller SQL, er et programmeringssprog, der bruges i datastyringssystemer og relationelle databaser. Fordi det er nemt at bruge og effektivt, er det blevet indarbejdet i kommercielle databaser som MySQL, Sybase, Postgres, Oracle og mere.
Hvordan optimerer du en SQL-forespørgsel?
For at optimere en SQL-forespørgsel og gøre den så effektiv som muligt, skal du bruge SELECT-sætningen til at instruere databasen om kun at forespørge efter relevante oplysninger. Undgå at bruge SELECT DISTINCT-sætningen, som kræver meget processorkraft. Brug kun jokertegn i slutningen af udsagn, og brug LIMIT-sætningen til kun at returnere det angivne antal poster.