SQL Tutorial Flashcards

1
Q

Hvad er en SQL SELECT statement?

A

SELECT statement bruges til udvælge data fra en database

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Hvad gør SQL SELECT DISTINCT statement? og hvad er syntaxen?

A

SELECT DISTINCT forespørgsler bruges til at returnere forskellige værdier i én kolonne.

SYNTAX:
SELECT DISTINCT column1, column2, …
FROM table_name;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Hvor gør WHERE-klausulen og hvad er syntaxen?

A

WHERE-klausulen bruges til at filtrere resultater baseret på specificerede betingelser.

SYNTAX:
SELECT column1, column2, …
FROM table_name
WHERE condition;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Hvad gør INSERT INTO statement og hvad er syntax?

A

INSERT INTO-sætningen bruges til at indsætte nye poster i en tabel.

Det kan gøres på to måder:

  1. specificer både kolonne navne og værdier, der skal indsættes

INSERT INTO table_name (column1, column2, column3, …)
VALUES (value1, value2, value3, …);

  1. Hvis du tilføjer værdier for alle kolonnerne i tabellen, behøver du ikke at specificere kolonnenavnene i SQL-forespørgslen. Sørg dog for, at rækkefølgen af værdierne er den samme som rækkefølgen af kolonnerne i tabellen.

INSERT INTO table_name
VALUES (value1, value2, value3, …);

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Hvad er en NULL værdi og hvordan tester vi for dem?

A

Et felt med en NULL-værdi er et felt uden værdi.

Vi tester ved brug af WHERE klausul:
IS NULL og IS NOT NULL

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Hvad gør en UPDATE Statement og hvad er syntax?

A

UPDATE-sætningen bruges til at ændre de eksisterende poster i en tabel.

Syntax:

UPDATE table_name
SET column1 = value1, column2 = value2, …
WHERE condition;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Hvad gør SQL DELETE Statement og hvad er syntax?

A

DELETE-sætningen bruges til at slette eksisterende poster i en tabel.

Syntax:
DELETE FROM table_name WHERE condition;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Hvad gør en Aggregate Functions og hvornår bruges den ofte?

A

En aggregeringsfunktion er en funktion, der udfører en beregning på en række værdier og returnerer en enkelt værdi.

Aggregeringsfunktioner bruges ofte med GROUP BY-klausulen i SELECT-erklæringen. GROUP BY-klausulen opdeler resultatet i grupper af værdier, og aggregeringsfunktionen kan bruges til at returnere en enkelt værdi for hver gruppe.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Hvad er LIKE Operator og hvilke wildcards bliver ofte brugt i sammenhæng med den?

A

LIKE-operatøren bruges i en WHERE-klausul til at søge efter et specificeret mønster i en kolonne.

Der er to wildcards, der ofte bruges i forbindelse med LIKE-operatøren:

Procenttegnet % repræsenterer nul, én eller flere tegn.
Underscore-tegnet _ repræsenterer ét enkelt tegn.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Hvad er en IN Operator, hvornår bruges den og hvad er syntax?

A

IN-operatøren giver dig mulighed for at specificere flere værdier i en WHERE-klausul.

IN-operatøren er en genvej til flere OR-betingelser.

SYNTAX:
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1, value2, …);

EKS: return all customers from ‘Germany’, ‘France’, or ‘UK’
SELECT * FROM Customers
WHERE Country IN (‘Germany’, ‘France’, ‘UK’);

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Hvad er en BETWEEN Operator og hvad er syntax?

A

BETWEEN-operatøren vælger værdier inden for et angivet interval. Værdierne kan være tal, tekst eller datoer.

BETWEEN-operatøren er inklusiv: begyndelses- og slutværdierne er inkluderet.

SYNTAX:
SELECT column_name(s)
FROM table_name
WHERE column_name BETWEEN value1 AND value2;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Hvad er SQL Aliases

A

SQL-aliasser bruges til at give en tabel eller en kolonne i en tabel et midlertidigt navn.

Aliasser bruges ofte til at gøre kolonnenavne mere læsbare.

Et alias eksisterer kun i varigheden af den pågældende forespørgsel.

Et alias oprettes med nøgleordet AS.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Hvad er en JOIN klausul?

A

En JOIN-klausul bruges til at kombinere rækker fra to eller flere tabeller baseret på en relateret kolonne mellem dem.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Hvad er en INNER JOIN, hvad skal man være særlig opmærksom på og giv et eksempel på SYNTAX.

A

INNER JOIN vælger poster, der har matchende værdier i begge tabeller.

Det betyder, at hvis du har et produkt uden CategoryID eller med en CategoryID, der ikke findes i Categories-tabellen, vil den post ikke blive returneret i resultatet.

SYNTAX:
SELECT column_name(s)
FROM table1
INNER JOIN table2
ON table1.column_name = table2.column_name;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Hvad gør en LEFT JOIN og hvad er syntax?

A

Nøgleordet LEFT JOIN returnerer alle poster fra den venstre tabel (table1) og de matchende poster fra den højre tabel (table2). Resultatet er 0 poster fra den højre side, hvis der ikke er nogen match.

SYNTAX:
SELECT column_name(s)
FROM table1
LEFT JOIN table2
ON table1.column_name = table2.column_name;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Hvad gør en FULL JOIN og hvad er syntax?

A

Nøgleordet FULL JOIN returnerer alle poster, når der er en match enten i venstre tabel (table1) eller i højre tabel (table2) eller begge steder.

SYNTAX:
SELECT column_name(s)
FROM table1
FULL JOIN table2
ON table1.column_name = table2.column_name
WHERE condition;

17
Q

Hvad er en Self Join og hvornår bruges den?

A

En self join er en almindelig join-operation, hvor en tabel bliver forbundet med sig selv. Dette sker ved at definere mindst to tabel betegnelser (aliaser) for samme tabel og derefter matche rækker baseret på en relation mellem kolonner i den samme tabel.

Hierarkiske strukturer: Hvis du har en tabel, der indeholder data om en hierarkisk struktur, f.eks. en organisatorisk struktur med medarbejdere og deres ledere, kan du bruge en self join til at finde forholdet mellem medarbejdere og deres ledere i samme tabel.

Selvreferencerende relationer: Hvis en tabel indeholder data, hvor rækkerne har en relation til andre rækker i samme tabel, kan en self join bruges til at finde disse relationer.

Følge forælder/barn-forhold: I en tabel med data, der repræsenterer et forhold mellem forældre og børn (f.eks. i en genealogisk database), kan en self join bruges til at finde forældre/barn-forhold.

18
Q

Hvad er syntax på en Self Join og giv et eksempel:

A

Syntax:

SELECT column_name(s)
FROM table1 T1, table1 T2
WHERE condition;

EKSEMPEL:
SELECT A.CustomerName AS CustomerName1, B.CustomerName AS CustomerName2, A.City
FROM Customers A, Customers B
WHERE A.CustomerID <> B.CustomerID
AND A.City = B.City
ORDER BY A.City;

19
Q

Hvad er en Union Operator og hvad er syntax?

A

UNION-operatøren bruges til at kombinere resultat-sættet fra to eller flere SELECT-udtryk.

SYNTAX:
SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2;

20
Q

hvilke betingelser gælder der for en Union Operator?

A

Hvert SELECT-udtryk inden for UNION skal have det samme antal kolonner.
Kolonnerne skal også have lignende datatyper.
Kolonnerne i hvert SELECT-udtryk skal også være i samme rækkefølge.

21
Q

Hvornår bruges Union ALL operator?

A

UNION-operatøren vælger som standard kun entydige værdier. For at tillade dublerede værdier, brug UNION ALL:

SYNTAX:
SELECT column_name(s) FROM table1
UNION ALL
SELECT column_name(s) FROM table2;

22
Q

Hvad gør en GROUP BY Statement og hvad er syntax?

A

GROUP BY-sætningen grupperer rækker, der har de samme værdier, til sammendragsrækker, såsom “find antallet af kunder i hvert land”.

SYNTAX:
SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
ORDER BY column_name(s);

23
Q

Hvad gør en HAVING klausul og giv et eksempel på syntax:

A

HAVING-klausulen blev tilføjet til SQL, fordi WHERE-nøgleordet ikke kan bruges med aggregatfunktioner.

SYNTAX:
SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
HAVING condition
ORDER BY column_name(s);

24
Q

Hvad gør EXISTS Operator og giv et eksempel på syntax:

A

EXISTS-operatøren bruges til at teste for eksistensen af en hvilken som helst post i en subforespørgsel.

EXISTS-operatøren returnerer TRUE, hvis subforespørgslen returnerer én eller flere poster.

SYNTAX:
SELECT column_name(s)
FROM table_name
WHERE EXISTS
(SELECT column_name FROM table_name WHERE condition);

25
Q

Hvad gør ANY Operator og hvad er syntax?

A

ANY-operatøren:

returnerer en boolesk værdi som resultat
returnerer TRUE, hvis nogen af værdierne i subforespørgslen opfylder betingelsen
ANY betyder, at betingelsen vil være sand, hvis operationen er sand for nogen af værdierne i rækken.

SYNTAX:
SELECT column_name(s)
FROM table_name
WHERE column_name operator ANY
(SELECT column_name
FROM table_name
WHERE condition);

26
Q

Hvad gør ALL Operator og hvad er syntax?

A

ALL-operatøren:

returnerer en boolesk værdi som resultat
returnerer TRUE, hvis alle værdierne i subforespørgslen opfylder betingelsen
bruges med SELECT-, WHERE- og HAVING-sætninger
ALL betyder, at betingelsen kun vil være sand, hvis operationen er sand for alle værdier i rækken.

SYNTAX - for SELECT STATEMENT:
SELECT ALL column_name(s)
FROM table_name
WHERE condition;

27
Q

Hvad gør en CASE Expression og hvad er syntax?

A

CASE-udtrykket gennemgår betingelser og returnerer en værdi, når den første betingelse er opfyldt (ligesom en if-then-else-sætning). Så snart en betingelse er sand, vil det stoppe med at læse og returnere resultatet. Hvis ingen betingelser er sande, returnerer det værdien i ELSE-klausulen.

Hvis der ikke er nogen ELSE-del og ingen betingelser er sande, returnerer det NULL.

SYNTAX:
CASE
WHEN condition1 THEN result1
WHEN condition2 THEN result2
WHEN conditionN THEN resultN
ELSE result
END;

28
Q

Hvilke Aritmetiske operatører er der?

A

+ Addition (Addition)
- Subtraktion (Subtract)
* Multiplikation (Multiply)
/ Division (Divide)
% Modulo (Modulo)

29
Q

Hvad er en sammenlignings Operator og hvilke er der?

A

SQL sammenligningsoperatører sammenligner værdier og returnerer et boolesk resultat baseret på om betingelsen er sand eller falsk. Her er de grundlæggende SQL sammenligningsoperatører:

= Lig med (equal to)
!= eller <> Ikke lig med (not equal to)
< Mindre end (less than)
<= Mindre end eller lig med (less than or equal to)
> Større end (greater than)
>= Større end eller lig med (greater than or equal to)

30
Q

Hvad er en Compound Operators?

A

SQL Compound Operators er kombinerede operatører, der udfører både en aritmetisk operation og en opdateringsoperation på en variabel i én enkelt instruktion. De bruges primært i UPDATE-udsagn til at forenkle og effektivisere opdateringer af databasedata.

De mest almindelige SQL Compound Operators inkluderer:

+= Addere og opdatere
-= Subtrahere og opdatere
*= Multiplicere og opdatere
/= Dividere og opdatere
%= Modulo og opdatere

31
Q

Hvad er en logical Operator?

A

SQL Logiske operatører er brugt til at kombinere betingelser i en SQL-forespørgsel. De hjælper med at danne komplekse betingelser ved at evaluere flere betingelser sammen og returnere en boolesk værdi (sand eller falsk) som resultat. De mest almindelige SQL logiske operatører inkluderer:

ALL TRUE hvis alle subforespørgselsværdier opfylder betingelsen
AND TRUE hvis alle betingelser adskilt af AND er SAND
ANY TRUE hvis nogen af subforespørgselsværdierne opfylder betingelsen
BETWEEN TRUE hvis operanden er inden for sammenligningsintervallet
EXISTS TRUE hvis subforespørgslen returnerer én eller flere poster
IN TRUE hvis operanden er lig med en af en liste af udtryk
LIKE TRUE hvis operanden matcher et mønster
NOT Viser en post, hvis betingelsen(e) IKKE er SAND
OR TRUE hvis nogen af betingelserne adskilt af OR er SAND
SOME TRUE hvis nogen af subforespørgselsværdierne opfylder betingelsen