Робочий аркуш «Бази даних і SQL» з відповідями

Безкоштовний робочий аркуш для друку «Бази даних і SQL»: 8 задач від легких до рівня іспиту, з ключем відповідей. Роздрукуйте його або збережіть як PDF.

Для викладачів: можна безкоштовно друкувати, копіювати й використовувати на заняттях. Кожен новий аркуш має нові значення і власні відповіді. Будемо вдячні за посилання на ExamProblems на сторінці вашого курсу.

Ім’я: ____________________   Дата: ____________

1.Легка

Що робить WHERE country IN ('NL', 'BE', 'DE')?

  1. AЗалишає рядки, де country немає у списку
  2. BЗалишає рядки, де country дорівнює будь-якому значенню зі списку
  3. CСортує рядки в порядку списку
  4. DЗалишає рядки, де значення country містить усі три коди одночасно
2.Легка

Який оператор використовують для простого зіставлення текстових шаблонів у реченні WHERE?

  1. ACONTAINS
  2. BLIKE
  3. CMATCH
  4. DSIMILAR
3.Легка

Для чого використовують діаграму «сутність–зв’язок» (ER)?

  1. AДля переліку користувачів бази даних
  2. BДля моделювання сутностей, їхніх атрибутів і зв’язків під час проєктування бази даних
  3. CЩоб показати, як виконується запит
  4. DДля вимірювання продуктивності бази даних
4.Середня

Чому таблиця може мати лише один кластеризований індекс?

  1. AКластеризовані індекси займають забагато пам’яті
  2. BРядки можна фізично зберігати лише в одному порядку
  3. CКластеризовані індекси можуть бути лише на первинному ключі
  4. DСтандарт SQL забороняє більше ніж один індекс на таблицю
5.Середня

Яка властивість ACID гарантує, що зафіксовані зміни переживуть збій системи?

  1. AАтомарність (atomicity)
  2. BІзольованість (isolation)
  3. CДовговічність (durability)
  4. DУзгодженість (consistency)
6.Середня

Чому SELECT price * 2 AS double_price FROM t WHERE double_price > 10 не виконується в більшості баз даних?

  1. AПсевдоніми не можуть містити підкреслення
  2. BАрифметика не дозволена у списку SELECT
  3. CWHERE обчислюється перед списком SELECT, тож псевдоніма ще не існує
  4. DWHERE може порівнювати лише текстові стовпці
7.Складна

Таблиця enrolment(student_id, course_id, student_name, grade) має ключ (student_id, course_id). Яку нормальну форму вона порушує?

  1. AЖодну, вона в BCNF
  2. BПершу нормальну форму, бо стовпець grade не містить атомарних значень
  3. CЛише третю нормальну форму, бо grade залежить від student_name
  4. DДругу нормальну форму, бо student_name залежить лише від student_id
8.Складна

Бали — 90, 90 і 80. Які значення дає RANK() OVER (ORDER BY score DESC)?

  1. A1, 1, 3
  2. B1, 2, 3
  3. C2, 2, 3
  4. D1, 1, 2

Ключ відповідей

  1. 1. B · Залишає рядки, де country дорівнює будь-якому значенню зі списку
  2. 2. B · LIKE
  3. 3. B · Для моделювання сутностей, їхніх атрибутів і зв’язків під час проєктування бази даних
  4. 4. B · Рядки можна фізично зберігати лише в одному порядку
  5. 5. C · Довговічність (durability)
  6. 6. C · WHERE обчислюється перед списком SELECT, тож псевдоніма ще не існує
  7. 7. D · Другу нормальну форму, бо student_name залежить лише від student_id
  8. 8. A · 1, 1, 3

Повні покрокові розв’язки: тренуйте цю тему на examproblems.com.