1.Lengvas
Kas yra pirminis raktas (primary key)?
- AStulpelis, kuriame gali būti pasikartojančių reikšmių, bet niekada negali būti NULL
- BStulpelis arba stulpelių rinkinys, vienareikšmiškai identifikuojantis kiekvieną eilutę
- CDuomenų bazės slaptažodis
- DPirmasis kiekvienos lentelės stulpelis
2.Lengvas
Kas yra kandidatinis raktas?
- ABet kuris stulpelis su NULL reikšmėmis
- BStulpelis, laukiantis, kol taps išoriniu raktu
- CDviem lentelėms bendras stulpelių rinkinys jų eilutėms susieti
- DMinimalus stulpelių rinkinys, vienareikšmiškai identifikuojantis kiekvieną eilutę
3.Lengvas
Ką grąžina CROSS JOIN?
- ATik eilutes, kurios sutampa pagal bendrą rakto stulpelį
- BTik pirmosios lentelės eilutes
- CTik nesutampančias eilutes
- DKiekvieną dviejų lentelių eilučių derinį
4.Vidutinis
LEFT JOIN grąžina:
- AEilutes, neturinčias atitikmens nė vienoje lentelėje
- BTik visas dešiniosios lentelės eilutes
- CVisas kairiosios lentelės eilutes ir atitinkančias dešiniosios lentelės eilutes, o ten, kur atitikmens nėra, – NULL
- DTik atitinkančias abiejų lentelių eilutes
5.Vidutinis
Kuris teiginys apie HAVING yra teisingas?
- AJame galima naudoti agregavimo funkcijas grupėms filtruoti
- BJis rikiuoja rezultatus
- CJo negalima naudoti su GROUP BY
- DJis SELECT sakinyje turi būti prieš WHERE
6.Vidutinis
Studentai gali lankyti daug kursų, o kursus lanko daug studentų. Kaip tai modeliuojama lentelėmis?
- AIšoriniu raktu course_id studentų lentelėje, nurodančiu į kursus
- BSujungiant studentus ir kursus į vieną lentelę
- CVienu stulpeliu, saugančiu kursų id sąrašą
- DTarpine lentele, laikančia išorinius raktus ir į studentus, ir į kursus
7.Sunkus
Lentelėje yra milijonas eilučių, o loginio tipo stulpelis is_active 95% iš jų yra TRUE. Kodėl optimizatorius užklausai WHERE is_active = TRUE gali nenaudoti is_active indekso?
- AIndeksas TRUE traktuoja kaip NULL
- BAtitinka dauguma eilučių, todėl visos lentelės peržiūra pigesnė nei daugybė paieškų indekse
- COptimizatorius WHERE sąlygose niekada nenaudoja indeksų
- DLoginio tipo stulpeliams indeksų sukurti negalima
8.Sunkus
Koreliuotoji papildoma užklausa (correlated subquery) yra tokia, kuri:
- AVykdoma tik vieną kartą prieš išorinę užklausą, o jos rezultatas išsaugomas visoms eilutėms
- BNaudoja tik agregavimo funkcijas
- CSujungia dvi lenteles išoriniu raktu
- DNaudoja išorinės užklausos stulpelius ir vertinama kiekvienai išorinės užklausos eilutei
Atsakymai
- 1. B · Stulpelis arba stulpelių rinkinys, vienareikšmiškai identifikuojantis kiekvieną eilutę
- 2. D · Minimalus stulpelių rinkinys, vienareikšmiškai identifikuojantis kiekvieną eilutę
- 3. D · Kiekvieną dviejų lentelių eilučių derinį
- 4. C · Visas kairiosios lentelės eilutes ir atitinkančias dešiniosios lentelės eilutes, o ten, kur atitikmens nėra, – NULL
- 5. A · Jame galima naudoti agregavimo funkcijas grupėms filtruoti
- 6. D · Tarpine lentele, laikančia išorinius raktus ir į studentus, ir į kursus
- 7. B · Atitinka dauguma eilučių, todėl visos lentelės peržiūra pigesnė nei daugybė paieškų indekse
- 8. D · Naudoja išorinės užklausos stulpelius ir vertinama kiekvienai išorinės užklausos eilutei
Išsamūs sprendimai žingsnis po žingsnio: praktikuokite šią temą svetainėje examproblems.com.