Operator AND dan OR

📚 Pengenalan Operator AND dan OR

Operator AND dan OR digunakan untuk menggabungkan beberapa kondisi dalam klausa WHERE. Operator AND menampilkan record jika semua kondisi terpenuhi, sedangkan operator OR menampilkan record jika salah satu kondisi terpenuhi.

Operator AND

Operator AND digunakan untuk menggabungkan beberapa kondisi di mana semua kondisi harus benar:

SELECT kolom1, kolom2, ...
FROM nama_tabel
WHERE kondisi1 AND kondisi2 AND kondisi3 ...;

Operator OR

Operator OR digunakan untuk menggabungkan beberapa kondisi di mana salah satu kondisi harus benar:

SELECT kolom1, kolom2, ...
FROM nama_tabel
WHERE kondisi1 OR kondisi2 OR kondisi3 ...;

Contoh Penggunaan AND dan OR

Misalkan kita memiliki tabel 'pelanggan' dengan data berikut:

id nama email kota usia
1 John Doe john@example.com Jakarta 30
2 Jane Smith jane@example.com Bandung 25
3 Bob Johnson bob@example.com Jakarta 35
4 Alice Brown alice@example.com Surabaya 28

Contoh Operator AND

Untuk mengambil data pelanggan dari Jakarta yang usianya lebih dari 25:

SELECT * FROM pelanggan 
WHERE kota = 'Jakarta' AND usia > 25;

Contoh Operator OR

Untuk mengambil data pelanggan dari Jakarta atau Bandung:

SELECT * FROM pelanggan 
WHERE kota = 'Jakarta' OR kota = 'Bandung';

Kombinasi Operator AND dan OR

Anda dapat menggabungkan operator AND dan OR dalam query yang sama. Namun, Anda harus menggunakan tanda kurung untuk mengelompokkan kondisi dan memastikan urutan operasi yang benar:

-- Mengambil data pelanggan dari Jakarta yang usianya lebih dari 25
-- atau pelanggan dari Bandung yang usianya lebih dari 20
SELECT * FROM pelanggan 
WHERE (kota = 'Jakarta' AND usia > 25) 
OR (kota = 'Bandung' AND usia > 20);

Urutan Operasi

Dalam SQL, operator AND memiliki prioritas lebih tinggi daripada operator OR. Ini berarti kondisi dengan operator AND akan dievaluasi terlebih dahulu. Untuk menghindari kebingungan, selalu gunakan tanda kurung untuk mengelompokkan kondisi:

-- Query ini akan dievaluasi sebagai:
-- (kota = 'Jakarta' AND usia > 25) OR kota = 'Bandung'
SELECT * FROM pelanggan 
WHERE kota = 'Jakarta' AND usia > 25 OR kota = 'Bandung';

-- Lebih baik menggunakan tanda kurung untuk kejelasan:
SELECT * FROM pelanggan 
WHERE (kota = 'Jakarta' AND usia > 25) OR kota = 'Bandung';

Operator NOT dengan AND dan OR

Anda juga dapat menggunakan operator NOT untuk membalikkan hasil dari operator AND dan OR:

-- Mengambil data pelanggan yang bukan dari Jakarta atau Bandung
SELECT * FROM pelanggan 
WHERE NOT (kota = 'Jakarta' OR kota = 'Bandung');

-- Mengambil data pelanggan yang tidak memenuhi kedua kondisi
SELECT * FROM pelanggan 
WHERE NOT (kota = 'Jakarta' AND usia > 25);

Coba Sendiri

Anda dapat mencoba kode SQL di atas di editor berikut:

💡 Tips Operator AND dan OR

Saat menggabungkan operator AND dan OR, selalu gunakan tanda kurung untuk mengelompokkan kondisi. Ini tidak hanya membuat query lebih mudah dibaca, tetapi juga memastikan bahwa query dievaluasi sesuai dengan yang Anda inginkan.