Delen via


Operatorprioriteit (Entiteit SQL)

Wanneer een Entiteit SQL-query meerdere operators heeft, bepaalt de operatorprioriteit de volgorde waarin de bewerkingen worden uitgevoerd. De volgorde van de uitvoering kan aanzienlijk van invloed zijn op het queryresultaat.

Operators hebben de prioriteitsniveaus die worden weergegeven in de volgende tabel. Een operator met een hoger niveau wordt geëvalueerd vóór een operator met een lager niveau.

Niveau Het type bewerking Operator
1 Primair . , [] ()
2 Unair ! not
3 Multiplicatieve * / %
4 Toevoegingsmiddel + -
5 Ordenen < > <= >=
6 Equality = != <>
7 Voorwaardelijk EN and &&
8 Voorwaardelijk OF or &#124;&#124;

Wanneer twee operatoren in een expressie hetzelfde prioriteitsniveau voor de operator hebben, worden ze van links naar rechts geëvalueerd op basis van hun positie in de query. Wordt bijvoorbeeld x+y-z geëvalueerd als (x+y)-z.

U kunt haakjes gebruiken om de gedefinieerde prioriteit van de operators in een query te overschrijven. Alles tussen haakjes wordt eerst geëvalueerd om één resultaat te opleveren voordat dat resultaat kan worden gebruikt door een operator buiten de haakjes. Vermenigvuldigt bijvoorbeeld x+y*z met z en voegt vervolgens toex, maar (x+y)*z wordt toegevoegd x aan y en vermenigvuldigt vervolgens het resultaat met z.y

Zie ook