Базы данных и SQL: лист заданий с ответами

Бесплатный лист заданий для печати по теме «Базы данных и SQL»: 8 задач от простых до экзаменационного уровня, с ответами. Распечатайте его или сохраните как PDF.

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

Имя: ____________________   Дата: ____________

1.Лёгкая

Какое ключевое слово даёт столбцу или таблице временное альтернативное имя в запросе?

  1. AAS
  2. BRENAME
  3. CALIAS
  4. DNAME
2.Лёгкая

Какой оператор SQL изменяет значения в уже существующих строках?

  1. AUPDATE
  2. BINSERT
  3. CREPLACE COLUMN
  4. DMODIFY
3.Лёгкая

Клиент может разместить много заказов, но каждый заказ принадлежит ровно одному клиенту. Какой это тип связи?

  1. AОдин к одному
  2. BМногие ко многим
  3. CНоль к нулю
  4. DОдин ко многим
4.Средняя

Что возвращает SELECT COALESCE(phone, 'unknown') FROM customers для клиента, у которого phone равен NULL?

  1. AОшибку
  2. B'unknown'
  3. CNULL
  4. DПустую строку
5.Средняя

Что даёт обобщённое табличное выражение (WITH name AS (...))?

  1. AИндекс по столбцу
  2. BНового пользователя базы данных
  3. CПостоянную таблицу, остающуюся на диске, пока её не удалят
  4. DИменованный временный результат, который можно использовать в пределах одного оператора
6.Средняя

Что такое триггер базы данных?

  1. AЗапрос, который пользователь запускает вручную
  2. BКод, который автоматически выполняется, когда в таблице происходит заданное событие, например INSERT, UPDATE или DELETE
  3. CЗапланированное резервное копирование базы данных
  4. DВид индекса, ускоряющего поиск
7.Сложная

Что такое покрывающий индекс для запроса?

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

Запрос FROM customers c LEFT JOIN orders o ON o.customer_id = c.id WHERE o.status = 'paid' неожиданно теряет клиентов без заказов. Почему?

  1. AУсловие WHERE на o отбрасывает строки, заполненные NULL, превращая соединение во внутреннее
  2. BLEFT JOIN никогда не сохраняет строки без совпадений
  3. Cstatus — зарезервированное слово
  4. DВ соединении нужно использовать USING вместо ON

Ответы

  1. 1. A · AS
  2. 2. A · UPDATE
  3. 3. D · Один ко многим
  4. 4. B · 'unknown'
  5. 5. D · Именованный временный результат, который можно использовать в пределах одного оператора
  6. 6. B · Код, который автоматически выполняется, когда в таблице происходит заданное событие, например INSERT, UPDATE или DELETE
  7. 7. A · Индекс, содержащий все нужные запросу столбцы, так что саму таблицу читать не нужно
  8. 8. A · Условие WHERE на o отбрасывает строки, заполненные NULL, превращая соединение во внутреннее

Полные пошаговые решения: занимайтесь этой темой на examproblems.com.