1.Легка
Чим UNION ALL відрізняється від UNION?
- AUNION ALL зберігає дублікати рядків
- BUNION ALL працює лише з однією таблицею
- CUNION ALL сортує результат
- DUNION ALL видаляє дублікати рядків
2.Легка
Що таке первинний ключ (primary key)?
- AПерший стовпець кожної таблиці
- BСтовпець, який може містити дублікати, але ніколи не повинен містити NULL
- CПароль до бази даних
- DСтовпець або набір стовпців, що однозначно ідентифікує кожен рядок
3.Легка
Як відсортувати результат від найвищої до найнижчої зарплати?
- ASORT salary DOWN
- BGROUP BY salary DESC
- CORDER BY salary DESC
- DORDER BY salary ASC
4.Середня
Таблиця зберігає адресу клієнта в кожному рядку замовлення. Зміна адреси в одному рядку, але не в інших — це приклад:
- AФантомного читання
- BАномалії вставлення
- CАномалії видалення
- DАномалії оновлення
5.Середня
Що повертає EXCEPT (в Oracle — MINUS)?
- AУсі рядки з обох запитів без дублікатів
- BРядки, що є в обох запитах
- CРядки першого запиту, яких немає в другому
- DРядки другого запиту, яких немає в першому
6.Середня
Таблиця a має 3 рядки, а таблиця b — 4 рядки. Скільки рядків повертає SELECT * FROM a CROSS JOIN b?
- A3
- B7
- C12
- D4
7.Складна
Двофазне блокування (2PL) гарантує:
- AЩо транзакції ніколи не чекають
- BРозклади, серіалізовні за конфліктами (conflict-serializable)
- CЩо блокування не потрібні
- DЩо взаємоблокування ніколи не виникнуть
8.Складна
Чому після customers LEFT JOIN orders для підрахунку замовлень кожного клієнта використовують COUNT(o.id), а не COUNT(*)?
- ACOUNT(*) не дозволено після з’єднання
- BCOUNT(*) ігнорує рядки зі значеннями NULL
- CCOUNT(o.id) рахує лише різних клієнтів
- DCOUNT(*) рахує рядок, заповнений NULL, як 1 для клієнтів без замовлень
Ключ відповідей
- 1. A · UNION ALL зберігає дублікати рядків
- 2. D · Стовпець або набір стовпців, що однозначно ідентифікує кожен рядок
- 3. C · ORDER BY salary DESC
- 4. D · Аномалії оновлення
- 5. C · Рядки першого запиту, яких немає в другому
- 6. C · 12
- 7. B · Розклади, серіалізовні за конфліктами (conflict-serializable)
- 8. D · COUNT(*) рахує рядок, заповнений NULL, як 1 для клієнтів без замовлень
Повні покрокові розв’язки: тренуйте цю тему на examproblems.com.