1.Łatwy
Która instrukcja usuwa całą tabelę wraz z jej strukturą?
- ATRUNCATE ROWS
- BDELETE FROM
- CDROP TABLE
- DREMOVE TABLE
2.Łatwy
Do której części SQL należą GRANT i REVOKE?
- AData Query Language (DQL)
- BData Definition Language (DDL)
- CData Control Language (DCL)
- DData Manipulation Language (DML)
3.Łatwy
Która klauzula filtruje wiersze przed grupowaniem?
- AWHERE
- BHAVING
- CORDER BY
- DGROUP BY
4.Średni
Druga postać normalna (2NF) eliminuje:
- ACzęściowe zależności kolumn niekluczowych od części klucza złożonego
- BWszystkie wartości NULL
- CKlucze obce
- DZależności przechodnie między kolumnami niekluczowymi poprzez inną kolumnę niekluczową
5.Średni
Tabela przechowuje adres klienta w każdym wierszu zamówienia. Zmiana adresu w jednym wierszu, ale nie w pozostałych, to przykład:
- AOdczytu fantomowego
- BAnomalii aktualizacji
- CAnomalii wstawiania
- DAnomalii usuwania
6.Średni
Które zapytanie wypisuje klientów, którzy nigdy nie złożyli zamówienia?
- ASELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id = NULL
- BSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
- CSELECT c.name FROM customers c INNER JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
- DSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NOT NULL
7.Trudny
Tabela ma milion wierszy i kolumnę logiczną is_active, która jest TRUE dla 95% z nich. Dlaczego optymalizator może zignorować indeks na is_active dla WHERE is_active = TRUE?
- AIndeksów nie można tworzyć na kolumnach logicznych
- BIndeks traktuje TRUE jak NULL
- COptymalizator nigdy nie używa indeksów w klauzulach WHERE
- DPasuje większość wierszy, więc pełne skanowanie tabeli jest tańsze niż wiele wyszukiwań w indeksie
8.Trudny
Mając zależności funkcyjne A → B, B → C i C → D w R(A, B, C, D), jakie jest domknięcie A+?
- A{A, B, C}
- B{A, B}
- C{A, B, C, D}
- D{A}
Klucz odpowiedzi
- 1. C · DROP TABLE
- 2. C · Data Control Language (DCL)
- 3. A · WHERE
- 4. A · Częściowe zależności kolumn niekluczowych od części klucza złożonego
- 5. B · Anomalii aktualizacji
- 6. B · SELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
- 7. D · Pasuje większość wierszy, więc pełne skanowanie tabeli jest tańsze niż wiele wyszukiwań w indeksie
- 8. C · {A, B, C, D}
Pełne rozwiązania krok po kroku: ćwicz ten temat na examproblems.com.