Логические функции¶
Логические функции - позволяют добавить условия (истина/ложь) в вычисления.
Синтаксис формул похож на SQL.
CASE¶
Позволяет отобразить результат в зависимости от соблюдения условия. Удобна при проверке условия с множеством результатов.
Возвращает результат сравнения result_N выражения expression с последовательностью значениями value_N. Результат сравнения default_result возвращается при отсутствии совпадений.
- также можно указывать выражение и его значение не разделяя: CASE WHEN expression value THEN result ELSE default_result END
Тип данных expression: Логический
Тип данных result_N, condition_N и default_result: Число (дробное), Число (целое), Строка, Дата, Логический
Похожие: IF
Исходные данные: Доступны данные по заказам и категориям товаров в заказах.
Цель: Присвоить каждой категории код по ее наименованию.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Данные поле Category
(категории) определено как Группы, поле Orders
(заказы) определено как Столбцы.
2.В Расчетные агрегаты добавлен новый агрегат Category_cod
(код категории), в Промежутоное значение указана формула CASE [category] WHEN 'Furniture' THEN 'F' WHEN 'Office Supplies' THEN 'O' ELSE '-' END
.
3.Расчетный агрегат Category_cod
(код категории) определен как Столбцы.
IF¶
Позволяет отобразить результат в зависимости от соблюдения условия.
Возвращает результат result_N при выполнении условия condition_N. Результат сравнения default_result возвращается, если все условия не выполнены.
Тип данных result_N, condition_N и default_result: Число (дробное), Число (целое), Строка, Дата, Логический
Похожие: CASE
Исходные данные: Доступны данные прибыли по заказам.
Цель: Разбить данные по прибыли на именованные группы в зависимости от суммы.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Данные поле Profit
(прибыль) определено как Группы.
2.В Расчетные агрегаты добавлен новый агрегат Profit_cod
(код прибыли), в Промежутоное значение указана формула IF [Profit] > 1000 THEN 'L' ELSEIF [Profit] < 500 THEN 'S' ELSE 'M' END
.
3.Расчетный агрегат Profit_cod
(код прибыли) определен как Столбцы.
IFNULL¶
Позволяет проверить пустые поля и отобразить в них значение.
Возвращает value, если оно не NULL
, иначе возвращает alt_value.
Тип данных value и alt_value: Число (дробное), Число (целое), Строка, Дата, Логический
Исходные данные: Доступны данные прибыли по заказам.
Цель: Проверить наличие данных о прибыли, если данных нет, то считаем прибыль нулевой.
Формула:
Результат:
ISNULL¶
Позволяет найти пустые поля.
Возвращает 1 (true), если value - NULL
, иначе возвращает 0 (false).
Тип данных value: Число (дробное), Число (целое), Строка, Дата, Логический
Исходные данные: Доступны данные прибыли по заказам.
Цель: Проверить наличие данных о прибыли, установить отметку для пустых полей.
Формула:
Результат:
ZN¶
Позволяет найти пустые поля.
Возвращает значение выражения value, если оно не NULL
, иначе возвращает 0 (false).
Тип данных value: Число (дробное), Число (целое)
Исходные данные: Доступны данные прибыли по заказам и количеству заказов.
Цель: Вычислить прибыль по каждому заказу.
Формула:
Результат:
Подробнее
1.В виджете на вкладке Вид выбрана таблица агрегатов.
2.На вкладке Данные поля Profit
(прибыль) и Orders
(заказы) определены как Группы.
2.В Расчетные агрегаты добавлен новый агрегат Profit_orders
(прибыль по заказу), в Промежутоное значение указана формула ZN ([profit]/[orders])
.
3.Расчетный агрегат Profit_orders
(прибыль по заказу) определен как Агрегаты.