dbsys.info

Kapittel 5: Test deg selv

Hvert spørsmål har nøyaktig 1 korrekt svar.

Du får 3 poeng for hvert riktige svar, -1 poeng for hvert gale svar og 0 poeng for ubesvarte spørsmål.

Noen av spørsmålene refererer til eksemplene nederst på siden.

Ta vare på svarene dine

Hemmelig kallenavn (nick):

Lag nytt kallenavn

 

1. Når må du bruke en delspørring?

2. Hva blir resultatet av spørringen SELECT SUM(IF(Pris < 60, Pris, 0)) FROM Vare ?

3. Hvor mange rader gir spørringen SELECT * FROM Vare WHERE Id IN (SELECT DISTINCT Id FROM PrisEndring) ?

4. Lag en spørring som viser varer som er dyrere enn gjennomsnittet.

5. Når må du bruke en ytre kobling?

6. Hvilken visning (view) er oppdaterbar ?

7. Hva er en visning (view) ?

8. Hvilken spørring gir samme resultat som spørring 1 ?

9. Hvilken spørring gir samme resultat som spørring 2 ?

Tabell Vare

Id Navn Antall Pris Kategori
1003 Hammer 10 50 Verktøy
1013 Maling, 3 liter 5 129 Maling
1014 Maling, 1 liter 50 59 Maling
1029 Spikerpakke XY 75 60 Småting

Tabell PrisEndring

Id Dato GammelPris NyPris
1003 2014-08-10 40 45
1003 2014-08-15 45 50
1029 2014-08-15 50 60

Under finner du spørringer og definisjon av visninger mot en database for romreservasjoner ved et konferansehotell. En reservasjon er knyttet til et rom og en bedrift.

Tabell Rom

Nr Plasser
101 30
102 200
103 150
104 40

Tabell Bedrift

BNr Navn Mobil
1 Telemark Fylkeskommune 22334455
2 Opel Norge 88552277
3 COOP 55337722

Tabell Reservasjon

Id Dato Fra Til Nr BNr
1001 2014-09-22 08:00 15:00 102 2
1002 2014-09-23 10:00 14:00 102 2
1003 2014-09-23 10:00 12:00 103 1
1004 2014-09-23 13:00 15:00 103 3
1005 2014-09-24 09:00 15:00 104 3

Visning 1

CREATE VIEW Res103 AS
  SELECT *
  FROM Reservasjon
  WHERE Nr = 103

Visning 2

CREATE VIEW AntPrBedrift AS
  SELECT R.BNr, B.Navn, COUNT(*) AS Antall
  FROM Reservasjon AS R, Bedrift AS B
  WHERE R.BNr = B.BNr
  GROUP BY R.BNr

Spørring 1

SELECT Id, Dato, BNr, Nr
FROM Res103
WHERE BNr = 1

Spørring 2

SELECT *
FROM AntPrBedrift
WHERE Antall > 1