20 Vanliga frågor och svar på SQL-intervjuer [2022]

By rik

Grundläggande om SQL: Viktiga koncept och intervjufrågor

Structured Query Language, eller SQL, är ett standardspråk inom programmering som används av databasadministratörer och dataanalytiker för att utföra sökningar i databaser. Det används frekvent i kod för webbplatser, applikationer och andra digitala plattformar.

SQL möjliggör åtkomst till och manipulation av data i en databas, inklusive skapande och modifiering av tabeller och kolumner, samt frågeställningar med hjälp av specifika SQL-kommandon.

Denna artikel ger dig värdefulla insikter om du söker efter frågor och svar som förberedelse inför en SQL-intervju. Oavsett om du siktar på en roll som dataingenjör, dataanalytiker eller databasadministratör, kommer de följande frågorna sannolikt att dyka upp under intervjun.

Vilka är de viktigaste SQL-kommandona?

Här är några av de mest centrala SQL-kommandona:

  • SELECT – Hämtar data från en databas.
  • CREATE TABLE – Skapar en ny tabell.
  • DELETE – Raderar data från en databas.
  • INSERT INTO – Lägger till ny data i en databas.
  • ALTER DATABASE – Ändrar en databas struktur.
  • CREATE DATABASE – Skapar en ny databas.
  • UPDATE – Uppdaterar befintlig data i en databas.

Vilka är de fyra huvudkategorierna av SQL-satser?

SQL-satser är huvudsakligen indelade i följande kategorier:

  • Data Definition Language (DDL) satser
  • Data Manipulation Language (DML) satser
  • Data Control Language (DCL) satser
  • Transaktionskontrollspråk (TCL) satser

Vad är innebörden av en primärnyckel i SQL?

En primärnyckel är en kolumn (eller kombination av kolumner) som unikt identifierar varje rad i en databastabell. Primärnycklar är fundamentala i SQL-databaser. De säkerställer att varje rad har ett unikt ID och en tabell kan endast ha en primärnyckel, som kan bestå av ett eller flera fält.

Vilka typer av data kan lagras i SQL?

En datatyp definierar vilken sorts information som en variabel eller kolumn kan lagra. Det kan exempelvis vara binär data, numerisk data, textbaserad data, finansiell information, eller datum och tid.

I SQL klassificeras datatyperna i följande huvudgrupper:

  • Exakta numeriska värden
  • Ungefärliga numeriska värden
  • Datum och tidsvärden
  • Textsträngar (teckenbaserade)
  • Unicode-textsträngar
  • Binära strängar

Var lagras användarnamn och lösenord i SQL Server?

I SQL Server lagras användarnamn och lösenord i tabellerna sys.server_principals och sys.sql_logins, respektive. Lösenord lagras aldrig i klartext, utan hashas för säkerhetens skull.

Vad innebär SQL-injektion?

SQL-injektionsattacker är en vanlig form av cyberattack där illvilliga användare manipulerar ett programs databas för att få obehörig åtkomst. Detta kan leda till allvarliga konsekvenser som ekonomisk förlust eller stöld av känslig information. Det bästa sättet att skydda sig mot SQL-injektion är att förebygga dem genom god programmeringspraxis.

Vad är en trigger i SQL och vilka typer finns det?

En trigger är en speciell typ av lagrad procedur som automatiskt körs när en specifik händelse inträffar i databasservern. Triggers används för att granska data före eller efter datamodifikationer, antingen genom DDL- eller DML-satser.

Det finns tre huvudtyper av triggers: LOGON, DDL och DML:

  • LOGON-triggers: aktiveras vid inloggning
  • DDL-triggers: aktiveras vid DDL-kommandon som CREATE, ALTER eller DROP
  • DML-triggers: aktiveras vid DML-kommandon som modifierar data, som INSERT, UPDATE och DELETE

Hur skiljer sig funktioner med en rad från funktioner med flera rader?

En funktion med en rad påverkar en enskild rad i tabellen åt gången och returnerar ett enskilt resultat per rad. Funktioner för att omvandla text till gemener eller versaler är exempel på detta.

Funktioner med flera rader påverkar flera rader i tabellen samtidigt. De kallas även gruppfunktioner och returnerar ett enskilt resultat baserat på en uppsättning rader.

Vad är databasnormalisering och vilka är dess fyra grundläggande former?

Databasnormalisering är en process för att organisera data på ett sätt som gör den lättare att använda och minskar överflödig data. Kolumner och tabeller struktureras under normaliseringen för att upprätthålla beroenden på rätt sätt med hjälp av databasintegritetsregler.

De fyra normaliseringsformerna är:

  • Första normalformen (1NF)
  • Andra normalformen (2NF)
  • Tredje normalformen (3NF)
  • Boyce-Codd normalform (BCNF eller 4NF)

Vad är index och begränsningar i SQL?

Index är viktiga element i SQL som möjliggör snabba sökningar av data i stora databaser. De hjälper också till att upprätthålla begränsningar, som är regler som styr databasens beteende under vissa förhållanden.

Index förbättrar prestandan vid sökning genom att påskynda datainsamling i tabeller. De förbättrar även läsbarheten.

Begränsningar används för att definiera vilken typ av data som kan lagras i en tabell och säkerställer noggrannhet och tillförlitlighet. Åtgärder som bryter mot begränsningar avbryts.

Vilka är några vanliga SQL-begränsningar?

Vanliga SQL-begränsningar inkluderar:

  • CREATE INDEX: Skapar index för tabeller för snabbare datahämtning.
  • FOREIGN KEY: Kopplar tabeller med liknande attribut.
  • DEFAULT: Anger ett standardvärde för fält om inget annat anges.
  • UNIQUE: Kräver att varje värde i en kolumn är unikt.
  • PRIMARY KEY: Identifierar varje rad i en tabell unikt.
  • NOT NULL: Förhindrar att kolumner accepterar NULL-värden.
  • CHECK: Säkerställer att varje kolumnfält uppfyller ett förutbestämt krav.

Är NULL lika med 0 i SQL?

I SQL representerar ett NULL-värde information som är okänd eller inte tillgänglig. Det är inte detsamma som ett mellanslag (’ ’) eller talet 0. NULL kan inte jämföras med andra värden med jämförelseoperatorer som ”=” eller ”>” eftersom det varken kan vara lika med eller skilt från något annat värde.

Hur kan man förebygga SQL-injektionsattacker?

Förutom regelbunden skanning och penetrationstestning, är metoder som indatavalidering, rensning av indata, förberedda uttalanden och parameteriserade SQL-frågor avgörande för att skydda mot SQL-injektion. Brandväggar är också viktiga för att skydda SQL-databaser.

Vad är Dynamic SQL och när kan det användas?

Dynamisk SQL är en funktion som möjliggör förändring av SQL-frågor under körning baserat på olika villkor, som aktuellt datum, tid eller andra parametrar.

Dynamisk SQL kan förbättra dina programmeringskunskaper och hjälpa dig att skapa nya applikationer, förbättra databaser eller lägga till datalagringsfunktioner.

Vilka olika typer av nycklar finns det i SQL?

Olika typer av nycklar i SQL:

  • Primärnyckel: Unikt ID för varje rad i en tabell, får inte innehålla NULL-värden.
  • Utländsk nyckel: En referens till en primärnyckel i en annan tabell, används för att skapa relationer mellan tabeller.
  • Supernyckel: En eller flera kolumner som unikt identifierar en rad, men kan innehålla onödiga kolumner.
  • Kandidatnyckel: En minimal supernyckel, alla dess kolumner är nödvändiga för identifiering.
  • Sammansatt nyckel: Består av flera kolumner tillsammans och kan vara en primärnyckel.

Vilka typer av index finns det i SQL?

Följande typer av index finns i SQL:

  • Hash index
  • Minnesoptimerat icke-klustrat index
  • Klustrat index
  • Icke-klustrade index
  • Unikt index
  • Kolumnbutiksindex
  • Index med inkluderade kolumner
  • Index på beräknade kolumner
  • Filtrerat index
  • Rumsligt index
  • XML-index
  • Full-text index

Vad är en buffertpool och vilka är dess fördelar?

I SQL är en buffertpool också känd som buffertcache. Den används för att lagra cachade datasidor för olika resurser. Storleken på buffertpoolen anges när en SQL Server-instans konfigureras. Storleken avgör hur många sidor den kan lagra.

Fördelarna med en buffertpool är:

  • Förbättrad I/O-prestanda
  • Ökad transaktionskapacitet
  • Minskad I/O-latens
  • Förbättrad läsprestanda

Vad betyder beroende och vilka typer av beroenden finns?

Ett beroende uppstår när ett objekt refereras till med namn i en SQL-sats i ett annat objekt. Det refererade objektet är det som nämns i SQL-uttrycket och det refererande objektet är det som innehåller SQL-uttrycket.

De olika typerna av beroenden i SQL:

  • Funktionellt beroende
  • Fullständigt funktionellt beroende
  • Flerflödigt beroende
  • Transitivt beroende
  • Partiellt beroende

Vad är SQL-kopplingar och vilka är de vanligaste typerna?

Kopplingar är en grundläggande del av datahantering i SQL. De tillåter att två eller flera tabeller kombineras till en enda tabell för analys av data. De kan också filtrera resultat baserat på kriterier i en enskild tabell, vilket är praktiskt för att hitta specifika rader eller kolumner i en stor tabell.

Det finns fyra huvudtyper av JOINs i SQL: INNER JOIN, OUTER JOIN, CROSS JOIN och SELF JOIN.

Vilka är setoperatorerna i SQL?

Setoperatorer används för att kombinera data från en eller flera tabeller med liknande struktur. De liknar kopplingar, men samlar poster från olika frågor medan kopplingar kombinerar kolumner. Setoperationer används i sammansatta SQL-frågor.

Slutsats

Förhoppningsvis ger dessa frågor en bra inblick i vad man kan förvänta sig under en SQL-intervju. Ytterligare exponering för SQL-miljön, studier och övning är avgörande för att lyckas. Genom att fortsätta öva på frågor och studera de viktigaste SQL-principerna, kan du förbereda dig väl.

Om du behöver mer information om SQL-frågor, kolla in SQL-fuskblad för ytterligare insikt i SQL-satser.

För praktisk erfarenhet, besök dessa SQL-övningsplattformar.