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

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

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

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

1.Легка

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

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

Яка інструкція видаляє всю таблицю разом з її структурою?

  1. ADROP TABLE
  2. BDELETE FROM
  3. CREMOVE TABLE
  4. DTRUNCATE ROWS
3.Легка

До якої частини SQL належать інструкції CREATE, ALTER і DROP?

  1. AМови керування транзакціями (TCL)
  2. BМови визначення даних (DDL)
  3. CМови керування даними (DCL)
  4. DМови маніпулювання даними (DML)
4.Середня

Третя нормальна форма (3NF) усуває:

  1. AТранзитивні залежності між неключовими атрибутами
  2. BСкладені ключі
  3. CАтомарні значення
  4. DНадлишкові індекси на стовпцях, що не входять до ключа
5.Середня

Яке твердження про HAVING правильне?

  1. AВоно сортує результати
  2. BЙого не можна використовувати з GROUP BY
  3. CУ ньому можна використовувати агрегатні функції для фільтрації груп
  4. DВоно має стояти перед WHERE в інструкції SELECT
6.Середня

Який запит повертає кількість замовлень для кожного клієнта?

  1. ASELECT customer_id, COUNT(*) FROM orders ORDER BY customer_id
  2. BSELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  3. CSELECT DISTINCT COUNT(*) FROM orders
  4. DSELECT customer_id FROM orders WHERE COUNT(*) > 0
7.Складна

Що повертає SELECT name, dept, AVG(salary) OVER (PARTITION BY dept) FROM emp?

  1. AПомилку, бо name немає в GROUP BY
  2. BОдин рядок на відділ із його середньою зарплатою
  3. CЛише працівників, які заробляють більше за середнє свого відділу
  4. DКожен рядок працівника разом із середньою зарплатою його відділу
8.Складна

Що обчислює SELECT day, SUM(amount) OVER (ORDER BY day) FROM sales?

  1. AСередню суму за день
  2. BНаростальний підсумок amount, упорядкований за day
  3. CОдин рядок на день лише з підсумком цього дня
  4. DПідсумок усіх сум у кожному рядку

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

  1. 1. A · Для моделювання сутностей, їхніх атрибутів і зв’язків під час проєктування бази даних
  2. 2. A · DROP TABLE
  3. 3. B · Мови визначення даних (DDL)
  4. 4. A · Транзитивні залежності між неключовими атрибутами
  5. 5. C · У ньому можна використовувати агрегатні функції для фільтрації груп
  6. 6. B · SELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  7. 7. D · Кожен рядок працівника разом із середньою зарплатою його відділу
  8. 8. B · Наростальний підсумок amount, упорядкований за day

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