Mysql
 sql >> Base de données >  >> RDS >> Mysql

En quoi l'utilisation de OR dans une instruction MySQL diffère-t-elle exactement avec/sans parenthèses ?

En effet, OU a une précédence des opérateurs que ET. Chaque fois que la base de données voit une expression comme

A AND B OR C

le ET est évalué en premier, c'est-à-dire qu'il équivaut à

(A AND B) OR C

Donc, si vous voulez explicitement

A AND (B OR C)

à la place, vous devez mettre entre parenthèses.

Ce n'est pas spécifique à SQL. L'ordre de priorité de ces opérateurs est le même dans tous les langages de programmation que je connais (c'est-à-dire au moins les scripts shell C, C++, C#, Java et Unix).