Structured Query Language (SQL) er et databasestyringsspråk (DBMS) som brukes til å samhandle med relasjonsdatabaser. SQL brukes til å opprette og modifisere databaser, hente data fra databaser og administrere data i databaser. SQL er et viktig verktøy for databaseadministratorer, dataanalytikere og programutviklere.
Hvis du søker på en jobb som krever SQL-kunnskap, kan du forvente å bli stilt en rekke intervjuspørsmål om SQL. Disse spørsmålene kan dekke et bredt spekter av emner, inkludert grunnleggende SQL-syntaks, datamodellering, datamanipulasjon og ytelsesjustering.
For å hjelpe deg med å forberede deg til et SQL-intervju, har vi satt sammen en liste over vanlige intervjuspørsmål og svar. Vi har også inkludert noen tips for å svare på SQL-intervjuspørsmål effektivt.
Vanlige SQL-intervjuspørsmål og svar
Grunnleggende SQL-syntaks
Hva er SELECT-setningen og hva brukes den til?
SELECT-setningen brukes til å hente data fra en databasetabell. Syntaksen til SELECT-setningen er:
SELECT * FROM
hvor * representerer alle kolonnene i tabellen og
er navnet på tabellen du vil hente data fra.
Hva er WHERE-setningen og hva brukes den til?
WHERE-setningen brukes til å filtrere dataene som returneres av SELECT-setningen. Syntaksen til WHERE-setningen er:
SELECT * FROM
WHERE betingelse
hvor betingelse er en logisk uttrykk som evalueres til SANN eller USANN for hver rad i tabellen. Bare rader som oppfyller betingelsen vil bli returnert av SELECT-setningen.
Hva er JOIN-setningen og hva brukes den til?
JOIN-setningen brukes til å kombinere data fra to eller flere tabeller. Syntaksen til JOIN-setningen er:
SELECT * FROM
1 JOIN
2 ON betingelse
hvor
1 og
2 er navnene på tabellene du vil kombinere, og betingelse er en logisk uttrykk som evalueres til SANN eller USANN for hver rad i de to tabellene. Bare rader som oppfyller betingelsen vil bli returnert av SELECT-setningen.
Datamodellering
Hva er en relasjonsdatabase?
En relasjonsdatabase er en database som lagrer data i tabeller. Tabellene er relatert til hverandre ved hjelp av primærnøkler og fremmednøkler. Dette gjør det mulig å hente data fra databasen effektivt ved å bruke SQL-spørringer.
Hva er en entitetsrelasjonsmodell (ERM)?
En ERM er et grafisk verktøy som brukes til å modellere strukturen til en relasjonsdatabase. ERM-er bruker enheter, attributter og relasjoner for å representere de virkelige verdensobjektene som skal lagres i databasen.
Hva er tredje normalform (3NF)?
3NF er en databasedesignprinsipp som sikrer at en database er fri for visse typer dataduplisering. En database er i 3NF hvis den oppfyller følgende tre betingelser:
1. Hver kolonne i en tabell er avhengig av tabellens primærnøkkel.
2. Hver ikke-primærnøkkelkolonne er avhengig av hele primærnøkkelen, ikke bare en del av den.
3. Det er ingen overgangsfunksjonelle avhengigheter i databasen.
Datamanipulasjon
Hva er INSERT-setningen og hva brukes den til?
INSERT-setningen brukes til å legge til nye rader i en databasetabell. Syntaksen til INSERT-setningen er:
er navnet på tabellen du vil legge til data til, kolonne1, kolonne2, … er navnene på kolonnene du vil legge til data til, og verdi1, verdi2, … er verdiene du vil legge til i kolonnene.
Hva er UPDATE-setningen og hva brukes den til?
UPDATE-setningen brukes til å oppdatere eksisterende rader i en databasetabell. Syntaksen til UPDATE-setningen er:
UPDATE
SET kolonne1 = verdi1, kolonne2 = verdi2, ... WHERE betingelse
hvor
er navnet på tabellen du vil oppdatere data i, kolonne1, kolonne2, … er navnene på kolonnene du vil oppdatere, verdi1, verdi2, … er verdiene du vil oppdatere i kolonnene, og betingelse er en logisk uttrykk som evalueres til SANN eller USANN for hver rad i tabellen. Bare rader som oppfyller betingelsen vil bli oppdatert av UPDATE-setningen.
Hva er DELETE-setningen og hva brukes den til?
DELETE-setningen brukes til å slette rader fra en databasetabell. Syntaksen til DELETE-setningen er:
DELETE FROM
WHERE betingelse
hvor
er navnet på tabellen du vil slette data fra, og betingelse er en logisk uttrykk som evalueres til SANN eller USANN for hver rad i tabellen. Bare rader som oppfyller betingelsen vil bli slettet av DELETE-setningen.
Ytelsesjustering
Hva er en indeks og hva brukes den til?
En indeks er en datastruktur som brukes til å forbedre ytelsen til SQL-spørringer. En indeks lagrer en sortert kopi av en kolonne i en databasetabell. Når en SELECT-setning utføres, kan databasen bruke indeksen til å raskt finne dataene den trenger uten å måtte skanne hele tabellen.
Hva er en materialisert visning og hva brukes den til?
En materialisert visning er en forhåndsutregnet kopi av en SQL-spørring. Når en materialisert visning opprettes, utføres spørringen og resultatene lagres i en ny tabell. Når spørringen utføres igjen, kan databasen bruke den materialiserte visningen til å hente resultatene raskt uten å måtte utføre spørringen på nytt.
Hva er fragmentering og hvordan kan den påvirke ytelsen?
Fragmentering er en tilstand der dataene i en databasetabell er spredt over flere ikke-sammenhengende blokker. Fragmentering kan oppstå når data settes inn i og slettes fra tabellen over tid. Fragmentering kan påvirke ytelsen til SQL-spørringer fordi databasen må bruke mer tid på å hente data fra disk.
Tips for å svare på SQL-intervjuspørsmål
* Vær kortfattet og presis i svarene dine.
* Bruk eksempler for å illustrere svarene dine.
* Snakk om din erfaring med å bruke SQL i virkelige verdenssituasjoner.
* Øv på å besvare SQL-intervjuspørsmål før intervjuet.
* Vær forberedt på å stille spørsmål til intervjueren om SQL.