Spec-Zone.ru › MySQL 5.7

12.4.1 Приоритет операторов

Приоритет операторов показан в следующем списке, от наивысшего к наименьшему. Операторы, показанные вместе в строке, имеют одинаковый приоритет.

INTERVAL
BINARY, COLLATE
!
- (unary minus), ~ (unary bit inversion)
^
*, /, DIV, %, MOD
-, +
<<, >>
&
|
= (comparison), <=>, >=, >, <=, <, <>, !=, IS, LIKE, REGEXP, IN
BETWEEN, CASE, WHEN, THEN, ELSE
NOT
AND, &&
XOR
OR, ||
= (assignment), :=

Приоритет оператора = зависит от того, используется ли он как оператор сравнения (=) или как оператор присваивания (=). При использовании в качестве оператора сравнения, он имеет тот же приоритет, что и <=>, >=, >, <=, <, <>, !=, IS, LIKE, REGEXP и IN(). При использовании в качестве оператора присваивания, он имеет тот же приоритет, что и :=. Раздел 13.7.4.1, “Синтаксис SET для присваивания переменных” и Раздел 9.4, “Пользовательские переменные”, объясняют, как MySQL определяет, какое толкование оператора = должно применяться.

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

Приоритет и значение некоторых операторов зависят от режима SQL:

  • По умолчанию, || является логическим OR оператором. При включенном режиме PIPES_AS_CONCAT, || является оператором конкатенации строк с приоритетом между ^ и унарными операторами.

  • По умолчанию, ! имеет более высокий приоритет, чем NOT. При включенном режиме HIGH_NOT_PRECEDENCE, ! и NOT имеют одинаковый приоритет.

Смотрите Раздел 5.1.10, “Режимы SQL сервера”.

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

mysql> SELECT 1+2*3;
        -> 7
mysql> SELECT (1+2)*3;
        -> 9

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-5.7-en/operator-precedence.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API