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

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

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

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

1.Легка

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

  1. ADROP
  2. BREMOVE
  3. CDELETE
  4. DTRUNCATE COLUMN
2.Легка

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

  1. AINSERT
  2. BCREATE
  3. CUPDATE
  4. DSELECT
3.Легка

Що таке складений ключ (composite key)?

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

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

  1. ASELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  2. BSELECT c.name FROM customers c INNER JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  3. CSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NOT NULL
  4. DSELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id = NULL
5.Середня

Який запит повертає найвищу зарплату в кожному відділі?

  1. ASELECT MAX(dept), salary FROM emp GROUP BY salary
  2. BSELECT dept, salary FROM emp WHERE salary = MAX(salary)
  3. CSELECT dept, MAX(salary) FROM emp GROUP BY dept
  4. DSELECT dept, MAX(salary) FROM emp ORDER BY dept
6.Середня

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

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

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

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

Таблиця b містить у стовпці y значення 1, 2 і NULL. Що повертає SELECT * FROM a WHERE x NOT IN (SELECT y FROM b)?

  1. AУзагалі жодних рядків
  2. BКожен рядок a
  3. CЛише рядки a, де x дорівнює NULL
  4. DРядки a, де x не дорівнює 1 чи 2

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

  1. 1. C · DELETE
  2. 2. D · SELECT
  3. 3. B · Ключ, що складається з двох чи більше стовпців
  4. 4. A · SELECT c.name FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.id IS NULL
  5. 5. C · SELECT dept, MAX(salary) FROM emp GROUP BY dept
  6. 6. D · Рядки можна фізично зберігати лише в одному порядку
  7. 7. B · Наростальний підсумок amount, упорядкований за day
  8. 8. A · Узагалі жодних рядків

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