1.Łatwy
Czym jest klucz złożony?
- AKluczem dopuszczającym powtarzające się wartości
- BKluczem składającym się z dwóch lub więcej kolumn
- CKluczem przechowywanym w osobnej tabeli
- DKluczem generowanym przez bazę danych
2.Łatwy
Co robi COMMIT w transakcji?
- ACofa wszystkie zmiany wprowadzone od rozpoczęcia transakcji
- BUtrwala wszystkie zmiany transakcji
- CTworzy nową tabelę
- DBlokuje całą bazę danych
3.Łatwy
Klient może złożyć wiele zamówień, ale każde zamówienie należy do dokładnie jednego klienta. Jaki to rodzaj związku?
- AWiele do wielu
- BZero do zera
- CJeden do wielu
- DJeden do jednego
4.Średni
Tabela ma wiersze, w których col jest NULL. Które wiersze zwraca WHERE col = NULL?
- ABłąd w każdej bazie danych
- BŻadnych wierszy, bo wynik porównania jest nieznany
- CWszystkie wiersze tabeli
- DTylko wiersze, w których col jest NULL, tak jak w IS NULL
5.Średni
Które zapytanie zwraca liczbę zamówień dla każdego klienta?
- ASELECT customer_id, COUNT(*) FROM orders ORDER BY customer_id
- BSELECT DISTINCT COUNT(*) FROM orders
- CSELECT customer_id FROM orders WHERE COUNT(*) > 0
- DSELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
6.Średni
Pierwsza postać normalna (1NF) wymaga, aby:
- ANie było kluczy obcych
- BKażda tabela miała dokładnie jedną kolumnę
- CKażda kolumna zawierała wartości atomowe i nie było powtarzających się grup
- DKażda kolumna niekluczowa zależała od całego klucza i od niczego poza kluczem
7.Trudny
Co oblicza SELECT day, SUM(amount) OVER (ORDER BY day) FROM sales?
- AJeden wiersz na dzień tylko z sumą z tego dnia
- BŚrednią kwotę na dzień
- CSumę wszystkich kwot w każdym wierszu
- DSumę narastającą amount uporządkowaną według day
8.Trudny
Jaki algorytm złączenia optymalizator często wybiera dla złączenia równościowego dwóch dużych tabel bez przydatnych indeksów?
- AZłączenie krzyżowe
- BZłączenie bitmapowe na kluczu głównym
- CZłączenie haszujące (hash join)
- DZłączenie zagnieżdżonymi pętlami z wyszukiwaniem w indeksie
Klucz odpowiedzi
- 1. B · Kluczem składającym się z dwóch lub więcej kolumn
- 2. B · Utrwala wszystkie zmiany transakcji
- 3. C · Jeden do wielu
- 4. B · Żadnych wierszy, bo wynik porównania jest nieznany
- 5. D · SELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
- 6. C · Każda kolumna zawierała wartości atomowe i nie było powtarzających się grup
- 7. D · Sumę narastającą amount uporządkowaną według day
- 8. C · Złączenie haszujące (hash join)
Pełne rozwiązania krok po kroku: ćwicz ten temat na examproblems.com.