1.Легка
Що таке первинний ключ (primary key)?
- AСтовпець, який може містити дублікати, але ніколи не повинен містити NULL
- BСтовпець або набір стовпців, що однозначно ідентифікує кожен рядок
- CПерший стовпець кожної таблиці
- DПароль до бази даних
2.Легка
Що робить обмеження CHECK?
- AПеревіряє пароль користувача
- BВідхиляє рядки, значення яких не задовольняють умову
- CПідраховує рядки в таблиці
- DПеревіряє, чи існує таблиця, перш ніж виконувати запит до неї
3.Легка
Яка інструкція SQL змінює значення в рядках, що вже існують?
- AINSERT
- BUPDATE
- CREPLACE COLUMN
- DMODIFY
4.Середня
Коли WHERE EXISTS (subquery) істинне для рядка?
- AКоли підзапит повертає рівно один рядок
- BКоли підзапит не повертає значень NULL
- CКоли підзапит повертає щонайменше один рядок
- DКоли підзапит повертає число, більше за нуль
5.Середня
Таблиця має рядки, де col дорівнює NULL. Які рядки повертає WHERE col = NULL?
- AУсі рядки таблиці
- BЖодних рядків, бо результат порівняння невідомий
- CЛише рядки, де col дорівнює NULL, як і за IS NULL
- DПомилку в кожній базі даних
6.Середня
Стовпець містить значення 10, 20 і NULL. Що повертає AVG(col)?
- ANULL
- B30
- C15
- D10
7.Складна
Корельований підзапит (correlated subquery) — це підзапит, який:
- AВиконується лише один раз перед зовнішнім запитом і кешує свій результат для кожного рядка
- BВикористовує лише агрегатні функції
- CПосилається на стовпці зовнішнього запиту й обчислюється для кожного рядка зовнішнього запиту
- DЗ’єднує дві таблиці за зовнішнім ключем
8.Складна
Таблиця має мільйон рядків і булевий стовпець is_active, що дорівнює TRUE для 95% з них. Чому оптимізатор може ігнорувати індекс на is_active для WHERE is_active = TRUE?
- AОптимізатор ніколи не використовує індекси в реченнях WHERE
- BБільшість рядків відповідають умові, тож повне сканування таблиці дешевше за багато пошуків в індексі
- CІндекси не можна створювати на булевих стовпцях
- DІндекс трактує TRUE як NULL
Ключ відповідей
- 1. B · Стовпець або набір стовпців, що однозначно ідентифікує кожен рядок
- 2. B · Відхиляє рядки, значення яких не задовольняють умову
- 3. B · UPDATE
- 4. C · Коли підзапит повертає щонайменше один рядок
- 5. B · Жодних рядків, бо результат порівняння невідомий
- 6. C · 15
- 7. C · Посилається на стовпці зовнішнього запиту й обчислюється для кожного рядка зовнішнього запиту
- 8. B · Більшість рядків відповідають умові, тож повне сканування таблиці дешевше за багато пошуків в індексі
Повні покрокові розв’язки: тренуйте цю тему на examproblems.com.