На Горох
Информатика, 11 класс

3.2.3. Поиск записей в базе данных с помощью фильтров и запросов

"Информатика (базовый уровень)", Угринович Н.Д.

Объяснение темы В оглавлении: 3.2.3. Поиск записей в базе данных с помощью фильтров и запросов

Кратко о теме

Фильтры и запросы помогают быстро находить нужные записи в базе данных. Фильтр временно скрывает строки, не подходящие под условие, а запрос задаёт правила отбора и может быть сохранён для повторного использования. Можно искать записи по одному или нескольким полям, сравнивать значения и объединять критерии с помощью логических операций «И» и «ИЛИ». При этом запрос на выборку не изменяет исходные данные.

Объяснение темы

Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.

Определения и обозначения

Фильтр — средство временно отобрать записи таблицы, соответствующие заданному условию. Он помогает быстро оставить на экране только нужные строки, не создавая новую таблицу. После отмены фильтра остальные записи снова становятся видимыми.

Запрос — сохранённое обращение к базе данных, задающее условия отбора и позволяющее получить нужные записи. В запросе можно указать, какие поля показывать и по каким правилам выбирать строки. Это удобно, если один и тот же поиск понадобится выполнить ещё раз.

Условие отбора — правило, по которому определяется, должна ли запись попасть в результат. Например, можно потребовать, чтобы значение поля «Класс» было равно 11 или чтобы балл был больше 4. Такое условие превращает обычный поиск в точную проверку каждой записи.

Запрос на выборку — запрос, который выводит записи из одной или нескольких таблиц, не изменяя исходные данные. Он формирует представление с найденными строками и выбранными столбцами. Поэтому запрос безопасен для анализа, если требуется только посмотреть или отобрать сведения.

Как это устроено

Фильтр сопоставляет значение нужного поля каждой записи с заданным критерием и оставляет на экране только подходящие строки. Это происходит потому, что программа проверяет условие отдельно для каждой записи и скрывает те, для которых проверка дала отрицательный результат. Данные не исчезают: меняется только их отображение.

Критерием может быть конкретное значение поля или сравнение с условием: больше, меньше, равно, не равно. Такой способ нужен потому, что поиск часто зависит не от одного точного слова, а от диапазона или границы, например «балл выше 4». Тип сравнения выбирают с учётом смысла и типа данных поля.

При нескольких условиях результат зависит от логической связки. «И» оставляет запись только тогда, когда выполнены все требования, поэтому результат обычно становится уже. «ИЛИ» достаточно одного выполненного требования, так что в выборку могут попасть записи разных типов.

Запрос задаёт не только критерии отбора, но и состав выводимых полей. После сохранения программа может повторить эти правила уже для обновлённых данных, поэтому результат не является навсегда зафиксированным списком. Если в таблице появились новые подходящие записи, они тоже могут попасть в результат.

Фильтр удобен для быстрого временного просмотра, когда не требуется сохранять настройку. Запрос выбирают, если поиск нужно регулярно повторять, показывать только отдельные поля или объединять сведения из нескольких таблиц. Разделение этих способов экономит время и помогает не выполнять одну и ту же настройку вручную.

Способы отбора записей в базе данных

СпособКак задаётся условиеЧто происходит с результатомКогда удобно использовать
Фильтр по выделенному значениюВыбирается конкретное значение в ячейке поляПоказываются записи с таким же значениемДля быстрого поиска по одному признаку
Фильтр по формеУсловия вводятся для одного или нескольких полейОтображаются записи, соответствующие заданным критериямДля более точного временного отбора
Запрос на выборкуСохраняются критерии и выбранные поляФормируется результат отбора без изменения таблицДля регулярного поиска и подготовки данных
Сочетание условий «И» и «ИЛИ»Критерии объединяются логическими операциямиРезультат зависит от выполнения всех или хотя бы одного условияДля сложного отбора по нескольким признакам

Сначала определите, какой признак должен проверяться, затем выберите подходящий способ отбора. Если поиск разовый, достаточно фильтра, а повторяющееся правило лучше оформить запросом. При нескольких критериях отдельно проверьте, нужна ли связка «И» или «ИЛИ».

Столбец «Что происходит с результатом» помогает отличить скрытие строк от изменения данных. В любой строке таблицы можно мысленно проверить условие и понять, почему запись попала или не попала в выборку.

Разбор задач

Задача 1. В таблице «Книги» нужно временно показать записи, в которых жанр — «Фантастика». Требуется именно просмотр, а не сохранение отдельного результата. Поэтому достаточно фильтра по значению поля.

  1. Откройте поле «Жанр» и найдите значение «Фантастика».
  2. Выберите фильтр по выделенному значению, чтобы программа сравнила с ним значения всех записей.
  3. Просмотрите оставшиеся строки и при необходимости отмените фильтр.

Ответ: применён фильтр по полю «Жанр» со значением «Фантастика». Остальные книги временно скрыты, но не удалены. После снятия фильтра они снова появятся.

Задача 2. В таблице «Ученики» нужно отобрать учащихся 11-го класса со средним баллом выше 4. Здесь важны два независимых требования: класс должен быть 11, а балл — больше 4. Значит, их нужно соединить условием «И».

  1. Для поля «Класс» задайте критерий «равно 11».
  2. Для поля «Средний балл» задайте критерий «больше 4».
  3. Соедините критерии операцией «И» и проверьте, что в результатах нет учеников другого класса или с баллом 4 и ниже.

Ответ: результат содержит только записи, удовлетворяющие обоим условиям. Ученик с баллом 4 не подходит, потому что требуется именно значение больше 4. Ученик другого класса также исключается.

Задача 3. Нужно создать сохраняемый запрос, выводящий фамилию и класс учеников, которые живут в заданном районе или имеют средний балл не ниже 4,5. В результате нужны не все поля, а только фамилия и класс. Связка «ИЛИ» выбрана потому, что достаточно одного из двух признаков.

  1. Создайте запрос на выборку по таблице «Ученики».
  2. Добавьте в результат поля «Фамилия» и «Класс», а в условиях укажите район и средний балл не ниже 4,5.
  3. Соедините критерии операцией «ИЛИ», сохраните запрос и запустите его для проверки.

Ответ: сохранённый запрос показывает фамилии и классы всех учеников, подходящих хотя бы по одному критерию. Записи с нужным районом попадут в результат даже при меньшем балле, и наоборот. Исходная таблица при этом не изменяется.

Типичные ошибки

Ошибка — считать, что фильтрация удаляет неподходящие записи. Так думают потому, что после применения фильтра строки исчезают с экрана. Проверьте себя: отмените фильтр и убедитесь, что записи снова отображаются.

Ошибка — путать условия «И» и «ИЛИ». При «И» должны выполняться все критерии, а при «ИЛИ» достаточно одного, поэтому результаты этих операций различаются. Для проверки составьте конкретную запись и спросите, выполнены ли для неё оба условия.

Ошибка — задать критерий не для того поля или использовать несовместимый формат. Например, текст вместо даты программа может не распознать как правильное условие. Перед запуском проверьте название поля, тип данных и вид записи значения.

Ошибка — считать запрос на выборку способом изменения таблицы. Он лишь показывает результат отбора, поэтому исправление значения в исходной записи запрос сам по себе не выполняет. Проверьте тип запроса: для просмотра нужен именно запрос на выборку.

Связь с другими темами

Для работы с фильтрами и запросами нужны знания о реляционной базе данных: таблице, поле, записи и типах данных. Тип поля определяет, как программа сравнивает значения. Поэтому число, текст и дата требуют разных правил ввода.

Тема опирается на сравнение значений и логические операции «И», «ИЛИ», «НЕ». Эти операции позволяют строить простые и сложные условия отбора. Чем точнее сформулировано правило, тем предсказуемее результат.

Отбор записей используется при создании отчётов и форм, а также при работе с большими базами данных. Он помогает вывести только нужные сведения вместо просмотра всей таблицы. Сохранённые запросы особенно полезны для регулярного анализа.

Что запомнить

  • Фильтр показывает только записи, удовлетворяющие критерию.
  • Скрытые фильтром записи остаются в таблице.
  • Запрос позволяет задать и сохранить правила получения результата.
  • Запрос на выборку не изменяет исходные записи.
  • При соединении критериев «И» должны выполняться все условия.
  • При соединении критериев «ИЛИ» достаточно выполнения одного условия.

Частые вопросы по теме

Чем фильтр отличается от запроса?

Фильтр обычно применяют для быстрого временного отбора записей в открытой таблице. Запрос можно сохранить, настроить состав выводимых полей и использовать снова, в том числе для данных из нескольких таблиц.

Удаляются ли записи, которые не прошли фильтр?

Нет, фильтр только временно скрывает неподходящие записи. Их можно снова показать, отменив фильтрацию.

Когда использовать условие «И», а когда «ИЛИ»?

«И» используют, когда запись должна соответствовать всем критериям одновременно. «ИЛИ» подходит, если достаточно выполнения хотя бы одного из условий.

Можно ли сохранить фильтр или запрос для повторного использования?

Настройки фильтра зависят от программы и часто применяются как временный способ отбора. Запрос специально предназначен для сохранения правил и повторного запуска после изменения данных.

Меняет ли запрос на выборку данные в исходной таблице?

Нет, запрос на выборку только отображает результат отбора. Исходные записи и их значения остаются без изменений.

Спросить по теме параграфа

3.2.3. Поиск записей в базе данных с помощью фильтров и запросов

Учебник

Оглавление →
Предмет
Информатика
Класс
11 класс
Учебник
"Информатика (базовый уровень)", Угринович Н.Д.