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 | 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.