> ## Documentation Index
> Fetch the complete documentation index at: https://help.teable.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Условная подстановка

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

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

## Сценарии использования

| Сценарий                 | Для чего подходит                                                                    |
| ------------------------ | ------------------------------------------------------------------------------------ |
| Анализ категорий         | Поиск самого продаваемого товара в той же категории                                  |
| Сравнение периодов       | Подстановка объёма продаж за предыдущий период для расчёта изменений между периодами |
| Сопоставление клиентов   | Поиск сведений о клиенте по номеру телефона, адресу электронной почты или ID клиента |
| Подстановка подробностей | Возврат соответствующих записей с подробностями на основе условий из текущей записи  |

## Порядок действий

<Steps>
  <Step title="Создайте поле условной подстановки">
    Нажмите значок `+` справа от имени поля, выберите **Условная подстановка** и введите название поля, например «Связанные заказы».
  </Step>

  <Step title="Выберите целевую таблицу">
    В раскрывающемся списке целевой таблицы выберите таблицу, в которой нужно выполнить запрос.
  </Step>

  <Step title="Настройте поле подстановки">
    Выберите поле, из которого нужно извлечь данные, и подтвердите тип возвращаемых данных.
  </Step>

  <Step title="Задайте условия фильтрации">
    Добавьте условия фильтрации, выберите поле, тип условия и значение для сравнения. Значением для сравнения может быть статическое значение или поле из текущей таблицы.
  </Step>

  <Step title="Настройте сортировку и ограничения">
    При необходимости задайте поле и направление сортировки, а также количество отображаемых записей.
  </Step>
</Steps>

Требуется хотя бы одно условие фильтрации. Для нескольких условий выберите «Выполнены все условия (И)» или «Выполнено любое условие (ИЛИ)».

## Практические сценарии

### Анализ динамики продаж по периодам

**Таблицы**

* Таблица сводных продаж по периодам с такими полями, как период, дата начала, дата окончания и объём продаж
* Таблица подробных данных о продажах с такими полями, как объём продаж и дата продажи

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

**Шаги**

**Создайте поле условной сводки для продаж за текущий период**

1. В таблице сводных продаж по периодам создайте поле «Условная сводка» с именем «Продажи за текущий период»
2. Целевая таблица: таблица подробных данных о продажах
3. Поле сводки: объём продаж
4. Условия фильтрации:
   * Поле: дата продажи -> Условие: раньше или равно -> Значение: поле даты окончания из текущей таблицы
   * Поле: дата продажи -> Условие: позже или равно -> Значение: поле даты начала из текущей таблицы
5. Агрегатная функция: сумма

**Создайте поле условной подстановки для продаж за предыдущий период**

1. Создайте поле «Условная подстановка» с именем «Продажи за предыдущий период»
2. Целевая таблица: таблица сводных продаж по периодам (эта таблица)
3. Поле: продажи за текущий период
4. Условие фильтрации:
   * Поле: дата окончания -> Условие: равно -> Значение: поле даты окончания предыдущего периода из текущей таблицы
5. Агрегатная функция: сумма

**Создайте поле формулы для роста относительно предыдущего периода**

1. Создайте поле «Формула» с именем «Темп роста относительно предыдущего периода»
2. Задайте формулу `(Продажи за текущий период - Продажи за предыдущий период) / Продажи за предыдущий период * 100`
3. Отформатируйте результат как процент с 2 знаками после запятой

### Анализ продаж товаров

**Таблицы**

* Таблица товаров с такими полями, как ID категории, название товара и объём продаж
* Таблица категорий с такими полями, как ID категории и название категории

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

**Шаги**

**Самый продаваемый товар**

1. В таблице категорий создайте поле «Условная подстановка» с именем «Самый продаваемый товар»
2. Целевая таблица: таблица товаров
3. Поле подстановки: название товара
4. Условие фильтрации:
   * Поле: ID категории -> Условие: равно -> Значение: поле ID категории из текущей таблицы
5. Сортировка: поле объёма продаж -> По убыванию
6. Ограничение отображения: 1 запись

**Объём продаж**

1. Создайте ещё одно поле «Условная подстановка» с именем «Объём продаж»
2. Целевая таблица: таблица товаров
3. Поле подстановки: объём продаж
4. Условие фильтрации:
   * Поле: ID категории -> Условие: равно -> Значение: поле ID категории из текущей таблицы
5. Сортировка: поле объёма продаж -> По убыванию
6. Ограничение отображения: 1 запись

## Часто задаваемые вопросы

<AccordionGroup>
  <Accordion title="Почему некоторые поля нельзя использовать в условиях фильтрации?">
    Некоторые сложные типы полей, например изображения и вложения, могут не поддерживать условия фильтрации.
  </Accordion>

  <Accordion title="Чем условная подстановка отличается от обычного поля подстановки?">
    Для обычного поля подстановки сначала требуется поле связи. Условная подстановка может напрямую сопоставлять данные в целевой таблице по условиям фильтрации.
  </Accordion>
</AccordionGroup>
