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

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

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

Имя: ____________________   Дата: ____________

1.Лёгкая

Что делает WHERE country IN ('NL', 'BE', 'DE')?

  1. AОставляет строки, в которых country равно любому значению из списка
  2. BОставляет строки, в которых значение country содержит сразу все три кода
  3. CОставляет строки, в которых country нет в списке
  4. DСортирует строки в порядке списка
2.Лёгкая

Что делает UNION с результатами двух запросов SELECT?

  1. AСоединяет их бок о бок по ключу
  2. BОставляет только строки, присутствующие в обоих
  3. CОставляет только строки, которые есть в первом запросе, но нет во втором
  4. DОбъединяет их в один результат и удаляет повторяющиеся строки
3.Лёгкая

Какое предложение (clause) фильтрует строки до группировки?

  1. AORDER BY
  2. BHAVING
  3. CWHERE
  4. DGROUP BY
4.Средняя

Чему в реляционной алгебре соответствует оператор проекции (π)?

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

Столбец содержит значения 10, 20 и NULL. Что возвращает AVG(col)?

  1. A15
  2. B30
  3. CNULL
  4. D10
6.Средняя

Представление (view) в SQL — это:

  1. AКопия таблицы на диске
  2. BЭкран клиента базы данных для просмотра таблиц
  3. CСохранённый запрос, который ведёт себя как виртуальная таблица
  4. DТип индекса
7.Сложная

Есть составной индекс по (last_name, first_name). Какое условие может использовать его наиболее эффективно?

  1. AWHERE first_name LIKE '%a'
  2. BWHERE last_name = 'Jansen'
  3. CWHERE first_name = 'Eva'
  4. DWHERE UPPER(first_name) = 'EVA'
8.Сложная

Какой алгоритм соединения оптимизатор часто выбирает для соединения по равенству двух больших таблиц без полезных индексов?

  1. AХеш-соединение (hash join)
  2. BСоединение вложенными циклами с обращениями к индексу
  3. CБитовое соединение по первичному ключу
  4. DПерекрёстное соединение

Ответы

  1. 1. A · Оставляет строки, в которых country равно любому значению из списка
  2. 2. D · Объединяет их в один результат и удаляет повторяющиеся строки
  3. 3. C · WHERE
  4. 4. A · Выбору столбцов, которые появятся в результате
  5. 5. A · 15
  6. 6. C · Сохранённый запрос, который ведёт себя как виртуальная таблица
  7. 7. B · WHERE last_name = 'Jansen'
  8. 8. A · Хеш-соединение (hash join)

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