Užduočių lapas tema Duomenų bazės ir SQL su atsakymais

Nemokamas spausdinamas užduočių lapas tema Duomenų bazės ir SQL: 8 uždavinių nuo lengvų iki egzamino lygio, su atsakymais. Atsispausdinkite arba išsaugokite kaip PDF.

Mokytojams: galima nemokamai spausdinti, kopijuoti ir naudoti per pamokas. Kiekvienas naujas lapas turi naujas reikšmes ir savo atsakymų raktą. Būsime dėkingi už nuorodą į ExamProblems jūsų kurso puslapyje.

Vardas: ____________________   Data: ____________

1.Lengvas

Kurias eilutes išrenka WHERE price BETWEEN 10 AND 20?

  1. AEilutes, kurių kaina už intervalo nuo 10 iki 20 ribų
  2. BEilutes, kurių kaina nuo 10 iki 20, įskaitant 10 ir 20
  3. CTik eilutes, kurių kaina lygi 10 arba 20
  4. DEilutes, kurių kaina didesnė nei 10 ir mažesnė nei 20, neįskaitant 10 ir 20
2.Lengvas

Ką grąžina CROSS JOIN?

  1. ATik nesutampančias eilutes
  2. BKiekvieną dviejų lentelių eilučių derinį
  3. CTik eilutes, kurios sutampa pagal bendrą rakto stulpelį
  4. DTik pirmosios lentelės eilutes
3.Lengvas

Ką užklausoje atlieka GROUP BY?

  1. ASurikiuoja rezultato eilutes abėcėlės tvarka
  2. BPašalina eilutes su NULL reikšmėmis
  3. CSujungia dvi lenteles pagal jų bendrus stulpelius
  4. DSudeda vienodų reikšmių eilutes į grupes, kad agregatai būtų skaičiuojami kiekvienai grupei
4.Vidutinis

Pirmoji normalinė forma (1NF) reikalauja, kad:

  1. AKiekvienas neraktinis stulpelis priklauso nuo viso rakto ir tik nuo rakto
  2. BKiekviename stulpelyje būtų atominės reikšmės ir nebūtų pasikartojančių grupių
  3. CKiekviena lentelė turėtų lygiai vieną stulpelį
  4. DNebūtų išorinių raktų
5.Vidutinis

Ką SELECT COALESCE(phone, 'unknown') FROM customers grąžina klientui, kurio phone yra NULL?

  1. ATuščią eilutę
  2. B'unknown'
  3. CNULL
  4. DKlaidą
6.Vidutinis

Kuri užklausa grąžina kiekvieno kliento užsakymų skaičių?

  1. ASELECT customer_id FROM orders WHERE COUNT(*) > 0
  2. BSELECT customer_id, COUNT(*) FROM orders ORDER BY customer_id
  3. CSELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  4. DSELECT DISTINCT COUNT(*) FROM orders
7.Sunkus

Kurį sujungimo algoritmą optimizatorius dažnai pasirenka lygybės sujungimui tarp dviejų didelių lentelių be naudingų indeksų?

  1. ABitmap sujungimą pagal pirminį raktą
  2. BKryžminį sujungimą
  3. CĮdėtųjų ciklų sujungimą su paieškomis indekse
  4. DMaišos sujungimą (hash join)
8.Sunkus

R(A, B, C, D) turi funkcines priklausomybes A → B ir C → D. Koks yra kandidatinis raktas?

  1. A{A}
  2. B{B, D}
  3. C{A, C}
  4. D{C}

Atsakymai

  1. 1. B · Eilutes, kurių kaina nuo 10 iki 20, įskaitant 10 ir 20
  2. 2. B · Kiekvieną dviejų lentelių eilučių derinį
  3. 3. D · Sudeda vienodų reikšmių eilutes į grupes, kad agregatai būtų skaičiuojami kiekvienai grupei
  4. 4. B · Kiekviename stulpelyje būtų atominės reikšmės ir nebūtų pasikartojančių grupių
  5. 5. B · 'unknown'
  6. 6. C · SELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  7. 7. D · Maišos sujungimą (hash join)
  8. 8. C · {A, C}

Išsamūs sprendimai žingsnis po žingsnio: praktikuokite šią temą svetainėje examproblems.com.