Prioritas ini menentukan kondisi mana yang akan dijalankan terlebih dahulu. Namun prioritas ini dapat diganti dengan menggunakan parentheses (kurung) pada kondisi yang ingin dijalankan terlebih dahulu.
- Operator aritmatik
- Operator konkatenasi
- Kondisi pembanding
- IS (NOT) NULL, LIKE, (NOT) IN
- (NOT) BETWEEN … AND …
- Tidak sama dengan
- Operator logika NOT
- Operator logika AND
- Operator logika OR
Sebagai contoh penggunaan prioritas, kita ingin mengetahui data SalesPerson yang bekerja di TerritoryID 1 dan 5 dan dengan SalesPersonID 279. Logikanya, data yang tampil dari kondisi pada TerritoryID 1 dan 5 adalah 4 data dan SalesPersonID 279 adalah salah satunya. Sehingga yang ditampilkan hanya 1 data. Ketika dilihat pada Query 17, hasil yang tampil adalah 4 baris.
Secara teknis, baris pertama dengan TerritoryID 5, tidak memenuhi kondisi 1 (FALSE), memenuhi kondisi 2 (TRUE), dan memenuhi kondisi 3 (TRUE). Karena AND dikerjakan dulu, maka kondisi 2 dan 3 diproses terlebih dahulu menghasilkan TRUE. Di-OR dengan kondisi 1 sehingga menjadi TRUE.
Untuk baris kedua dengan TerritoryID 1, memenuhi kondisi 1 (TRUE), tidak memenuhi kondisi 2 (FALSE), tidak memenuhi kondisi 3 (FALSE). Kondisi 2 dan 3 menghasilkan FALSE. Diproses dengan kondisi 1 sehingga menjadi TRUE. Hal yang sama terjadi juga pada baris selanjutnya.
SELECT *
FROM Sales.SalesPerson
WHERE TerritoryID = 1
OR TerritoryID = 5
AND SalesPersonID = 279;
Prioritas pertama sebenarnya adalah TerritoryID sehingga dalam Query selanjutnya, kondisi 1 dan 2 diberi kurung untuk diproses terlebih dahulu.
SELECT *
FROM Sales.SalesPerson
WHERE (TerritoryID = 1
OR TerritoryID = 5)
AND SalesPersonID = 279;
Semoga bermanfaat…