Home » SQL » Operator ANY dan ALL SQL : Syntax dan Contohnya

Operator ANY dan ALL SQL : Syntax dan Contohnya

by Hanifah Nurbaeti
by Hanifah Nurbaeti

Section Artikel

Operator SQL ANY dan ALL

Operator ANY dan ALL dapat digunakan dengan klausa WHERE atau HAVING.

Operator ANY akan mengembalikan true jika salah satu nilai subquery memenuhi kondisi.

Operator ALL akan mengembalikan true jika semua nilai subkueri memenuhi kondisi.

Syntax ANY

SELECT column_name(s)
FROM table_name
WHERE column_name operator ANY
(SELECT column_name FROM table_name WHERE condition);

Syntax ALL

SELECT column_name(s)
FROM table_name
WHERE column_name operator ALL
(SELECT column_name FROM table_name WHERE condition);

Catatan: Operator harus menjadi operator perbandingan standar (=, <>,! =,>,> =, <, Atau <=).

Contoh Database

Di bawah ini adalah pilihan dari tabel “Produk” di database contoh Northwind:

IdProdukNamaProdukIdSupplierIdCategoryUnitHarga
1Chais1110 boxes x 20 bags18
2Chang1124 – 12 oz bottles19
3Aniseed Syrup1212 – 550 ml bottles10
4Chef Anton’s Cajun Seasoning2248 – 6 oz jars22
5Chef Anton’s Gumbo Mix2236 boxes21.35

Dan pilihan dari tabel “OrderDetails”:

IdOrderDetailIdOrderIdProductQuantity
1102481112
2102484210
310248725
410249149
5102495140

Contoh SQL ANY

Operator ANY akan mengembalikan TRUE jika salah satu nilai subkueri memenuhi ketentuan.

Pernyataan SQL berikut mengembalikan TRUE dan mencantumkan nama produk jika menemukan catatan ANY di tabel OrderDetails bahwa Quantity = 12:

Contoh

SELECT NamaProduk
FROM Products
WHERE IdProduct = ANY (SELECT IdProduct FROM OrderDetails WHERE Quantity = 12);

Pernyataan SQL berikut mengembalikan TRUE dan mencantumkan nama produk jika menemukan rekaman ANY di tabel OrderDetails bahwa kuantitas > 99:

Contoh

SELECT NamaProduk
FROM Products
WHERE IdProduct = ANY (SELECT IdProduct FROM OrderDetails WHERE Quantity > 99);

Contoh SQL ALL

Operator ALL akan mengembalikan TRUE jika semua nilai subkueri memenuhi kondisi.

Pernyataan SQL berikut mengembalikan TRUE dan mencantumkan nama produk jika ALL rekaman dalam tabel OrderDetails memiliki quantitas = 10 (jadi, contoh ini akan mengembalikan FALSE, karena tidak SEMUA rekaman dalam tabel OrderDetails memiliki quantitas= 10):

Contoh

SELECT NamaProduk
FROM Products
WHERE IdProduct = ALL (SELECT IdProduct FROM OrderDetails WHERE Quantity = 10);

You may also like