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

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

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

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

1.Легка

Що робить UNION з результатами двох запитів SELECT?

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

Яке ключове слово SQL видаляє рядки-дублікати з результату?

  1. ADIFFERENT
  2. BSINGLE
  3. CDISTINCT
  4. DUNIQUE
3.Легка

Що означає символ-замінник % у шаблоні LIKE?

  1. AКінець рядка
  2. BРівно один символ у цій позиції рядка
  3. CБудь-яку одну цифру
  4. DБудь-яку послідовність із нуля чи більше символів
4.Середня

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

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

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

  1. ASELECT DISTINCT COUNT(*) FROM orders
  2. BSELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  3. CSELECT customer_id FROM orders WHERE COUNT(*) > 0
  4. DSELECT customer_id, COUNT(*) FROM orders ORDER BY customer_id
6.Середня

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

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

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

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

Транзакція T1 блокує рядок A й чекає на рядок B, а T2 блокує рядок B й чекає на рядок A. Що робить типова СКБД?

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

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

  1. 1. A · Об’єднує їх в один результат і видаляє дублікати рядків
  2. 2. C · DISTINCT
  3. 3. D · Будь-яку послідовність із нуля чи більше символів
  4. 4. C · Транзитивні залежності між неключовими атрибутами
  5. 5. B · SELECT customer_id, COUNT(*) FROM orders GROUP BY customer_id
  6. 6. D · У ньому можна використовувати агрегатні функції для фільтрації груп
  7. 7. B · Другу нормальну форму, бо student_name залежить лише від student_id
  8. 8. C · Виявляє взаємне блокування й перериває одну транзакцію як жертву

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