Skip to content

Операторы и приоритеты - Справка FineReport | Разработка отчетов | Отчеты | Учебные пособия

Операторы и приоритеты

1. Обзор

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

2. типы операторов

Существует четыре различных типа вычислительных операторов: арифметические, сравнения, логические и объединения строк.

2.1 Арифметические операторы

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

арифметический оператортипичный примерв конце концов
+ (плюс)= 3 + 36
- (минус/отрицательный)= 3 - 12
* (умножить)= 3 * 39
/(кроме)= 15 / 35
% (остаток)= 20 % 62
^ (множитель)= 3 ^ 29

2.2 Операторы сравнения

Для сравнения двух значений можно использовать следующие операторы. При сравнении двух значений с помощью этих операторов результатом является логическое значение TRUE или FALSE.

оператор сравненияскрытый смыслтипичный пример
= (знак равенства)равносильноA1 = B1
> (знак "больше, чем")перевешиваютA1 > B1
< (знак "меньше, чем")менееA1 < B1
>= (знак больше или равно)больше или равноA1 >= B1
<= (знак меньше или равно)меньше или равноA1 <= B1
!= (не равно)Примечание: Не то же самое, что <> в Excel.не равно ≠A1 ! = B1

2.3 Логические операторы

Логические операторы используются так же, как AND и OR.

логический операторскрытый смыслтипичный пример
&&Логические и, удовлетворяющие нескольким условиям выражения одновременноПродажи >= 10 && Продавцы >= 2
||Логическое "или", если выполняется одно из условий множественного выраженияПродажи >=10||Продавец >=2

Примечание: Логические операторы могут соединять только два выражения типа Boolean или numeric.

2.4 Операторы сшивания строк

Текстовые поля можно объединить с помощью оператора +.

Например, чтобы объединить текстовые поля "Стиль магазина" и "Название магазина", вы, конечно, можете использовать поле CONCATENATE, но более простым решением будет просто использовать "+", как показано ниже:

3. Порядок работы формулы

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

3.1 Приоритет оператора

Если в формуле несколько операторов, FineBI будет вычислять их в порядке, указанном в таблице ниже. Если несколько операторов в формуле имеют одинаковый порядок старшинства (например, если в формуле есть знак умножения и деления), FineBI будет вычислять каждый оператор в следующем направлении.

приоритетоператор (вычисления)скрытый смыслФормы использованияИнтеграция направлений
1-Знак отрицательного значения - (матем.)-Экспрессысправа налево
2^вычислить площадьВыражение ^ Выражениеслева направо
3*военная колесница с четырьмя лошадьми (архаика)Выражение*Выражение
/избавиться отВыражение/Экспрессия
%взять остатокЭкспрессия % экспрессии
4+плюсЭкспрессия + Экспрессия
-уменьшатьсяЭкспрессия-экспрессия
5>перевешиваютВыражения>Выражения
<менеевыражение<выражение
>=больше или равновыражение>=выражение
<=меньше или равновыражение<=выражение
6=, ==равносильновыражение = выражениеВыражение == выражение
! =не равно ≠выражение! = выражение
7&&логика сВыражения && Выражения
8||логический илиExpression||Expression

3.2 Расчет с использованием скобок

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

Например, следующая формула дает 11, потому что умножение вычисляется перед сложением. Формула сначала умножает 2 на 3, а затем прибавляет к результату 1 и 4.

= 1+2*3+4

Однако если вы измените этот синтаксис с помощью скобок, то сначала сложите 1 и 2, затем умножьте результат на 3 и прибавьте 4, чтобы получить 13.

= (1+2)*3+4