1. Введение

В задании 3 нужно найти информацию в небольшой реляционной базе данных. На ЕГЭ она обычно дана в одном файле электронной таблицы и разбита на несколько листов. Удобнее всего решать такую задачу в LibreOffice Calc: отбирать строки фильтрами и, когда нужно, подтягивать данные из связанных таблиц функцией ВПР.

В типичном файле есть три таблицы:

  • «Движение товаров» — главная таблица: дата, ID магазина, артикул, количество упаковок и тип операции («Поступление» или «Продажа»).
  • «Товар» — справочник товаров: артикул, отдел, название, единица измерения, количество в упаковке и цена за упаковку.
  • «Магазин» — справочник магазинов: ID магазина, район и адрес.
1

2. Решение через фильтры

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

Шаг 1. Ставим фильтр

Перейдите на нужный лист. Нажмите на букву первого столбца над таблицей (например, A) и, удерживая выделение, протяните до последнего столбца таблицы (например, F). После этого нажмите кнопку фильтра с воронкой. В заголовках столбцов появятся маленькие треугольники — через них выбираются нужные значения.

1

Шаг 2. Находим нужные товары и магазины

Если в условии дано название товара, сначала откройте лист «Товар» и по названию найдите его артикул. Затем этот артикул используйте в фильтре столбца «Артикул» на листе «Движение товаров».

С магазином работает та же логика: если указан район или адрес, откройте лист «Магазин», найдите подходящие ID магазинов и оставьте эти ID в фильтре главной таблицы.

Связи между таблицами: ID магазина из «Движения товаров» совпадает с ID магазина в листе «Магазин», а артикул из «Движения товаров» совпадает с артикулом в листе «Товар». Именно по этим полям таблицы связываются между собой.

Главная таблицаПоле-связкаСправочник
Движение товаровID магазинаМагазин
Движение товаровАртикулТовар

Артикул и ID магазина — это ключи, которые связывают три листа. В «Движении товаров» вместо названия товара хранится артикул, а вместо района — ID магазина.

Шаг 3. Не забываем про тип операции и даты

После товара и магазина проверьте остальные условия: период, «Поступление» или «Продажа», а также то, в каких единицах нужен ответ.

Что спрашиваютЧто выбрать в «Тип операции»Что считать
Сколько проданоПродажаСумма количества упаковок
Сколько поступилоПоступлениеСумма количества упаковок
Выручка от продажПродажаКоличество упаковок × цена за упаковку
Стоимость поступившего товараПоступлениеКоличество упаковок × цена за упаковку
Изменение запаса за периодПоступление и ПродажаПоступило − продано

При фильтрации дат границы периода обычно входят в условие: например, «с 2 по 10 октября» означает, что учитываются и 2-е, и 10-е число.

Не путайте выручку с разностью «поступило − продано». Выручка считается только по продажам: число проданных упаковок умножается на цену за упаковку.

Шаг 4. Проверяем единицы измерения

В главной таблице хранится количество упаковок, а в листе «Товар» — сколько граммов, миллилитров или других единиц находится в одной упаковке. Поэтому при вопросах про массу или объём нужно учитывать оба значения.

Нужно получитьКак считать
Количество упаковокберём «Количество упаковок, шт.»
Граммыупаковки × количество в упаковке
Килограммыупаковки × количество в упаковке / 1000
Литры (если единица — мл)упаковки × количество в упаковке / 1000

3. Решение с помощью ВПР

Если условие требует сразу несколько признаков — например, район, название товара и цену — удобнее не искать ID вручную. Можно добавить нужные сведения прямо в «Движение товаров» через ВПР, а затем один раз отфильтровать получившуюся таблицу.

Шаг 1. Подтягиваем район магазина

Создайте справа от основной таблицы новый столбец, например G, и назовите его «Район». В ячейке G2 пишем формулу:

=ВПР(C2;Магазин.Магазин.A1:1:C$1048576;2;0)

Разберём аргументы:

  • C2 — ID магазина в текущей строке. Именно его мы ищем в справочнике «Магазин».
  • Магазин.Магазин.A1:1:C$1048576 — диапазон поиска. Проще всего перейти на лист «Магазин» и выделить нужные столбцы по их буквам сверху: от A до C. LibreOffice сам подставит адрес диапазона в формулу.
  • 2 — номер столбца внутри выбранного диапазона, значение из которого нужно вернуть. Район находится во втором столбце.
  • 0 — точное совпадение ID. Это значит: искать только строку с тем же ID, а не ближайшее значение.

Если точного ID в справочнике нет, ВПР обычно вернёт ошибку #Н/Д. В экзаменационных файлах связанные таблицы составлены согласованно, поэтому нужные ID должны находиться.

1

После ввода формулы дважды щёлкните по маркеру заполнения в правом нижнем углу ячейки G2. Формула автоматически растянется вниз по строкам таблицы.

Шаг 2. Подтягиваем название товара

Создайте следующий столбец, например H — «Название». Теперь ключом будет артикул из D2, а справочником — лист «Товар»:

=ВПР(D2;Товар.Товар.A1:1:F$1048576;3;0)

Здесь D2 содержит артикул, а 3 означает: вернуть третий столбец выбранного диапазона — «Наименование товара». После этого снова растягиваем формулу вниз двойным щелчком по маркеру заполнения.

1

Шаг 3. Подтягиваем цену, массу упаковки или другое поле

Точно так же можно добавить цену за упаковку, количество граммов/миллилитров в упаковке, отдел и другие характеристики товара. Меняется в основном номер возвращаемого столбца.

В показанном файле цена за упаковку находится в шестом столбце диапазона A:F, поэтому используется число 6. Но это не универсальное число: всегда считайте номер нужного столбца внутри выбранного диапазона. Например, «Количество в упаковке» в этой таблице находится в пятом столбце, значит для него нужен индекс 5.

=ВПР(D2;Товар.Товар.A1:1:F$1048576;6;0)

1

Шаг 4. Фильтруем уже готовую таблицу

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

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

Практический принцип: если условие простое — быстрее найти артикул/ID в справочниках и решить фильтрами. Если признаков много — удобнее сначала подтянуть их через ВПР в главную таблицу, а затем фильтровать всё в одном месте.

Видео разбор