Cara Menggunakan AND Dan OR Clause Di MySQL

Pada tutorial MySQL kali ini, kita akan belajar tentang Cara Menggunakan AND dan OR Clause. AND dan OR merupakan salah satu operator logika yang banyak digunakan pada Where Clause statement.

Kedua operator diatas bekerja sesuai dengan prinsip logika AND dan OR, seperti tabel logika di bawah ini:

ABANDOR
TRUETRUETRUETRUE
TRUEFALSEFALSETRUE
FALSETRUEFALSETRUE
FALSEFALSEFALSEFALSE

Dari tabel logika diatas, dapat disimpulkan Logika AND akan bernilai true jika kedua operand A dan B bernilai true. dan Logika OR akan bernilai true jika salah satu dari kedua operand A dan B bernilai true.

Sintak Dasar


Di bawah ini adalah sintak dasar dari operator AND di MySQL:

SELECT column_name1, column_name2, column_nameN 
FROM table_name
WHERE [condition1] AND [condition2]...AND [conditionN];

Sedangkan di bawah ini adalah sintak dasar dari operator OR di MySQL:

SELECT column_name1, column_name2, column_nameN 
FROM table_name
WHERE [condition1] OR [condition2]...OR [conditionN];

Pada SQL query, operator AND diterjemahkan sebagai "DAN" dan operator "OR" sebagai "ATAU".

Contoh



Misalkan Anda telah memiliki sebuah table "employee" dengan data-data sebagai berikut:

+-------------+---------------+--------+----------+---------+------------+
| employee_id | employee_name | gender | address  | salary  | departemen |
+-------------+---------------+--------+----------+---------+------------+
| 001         | Nursalim      | L      | Jakarta  | 3000000 | IT         |
| 002         | Naura         | P      | Bandung  | 2000000 | HRD        |
| 003         | Ahmad         | L      | Semarang | 5000000 | ACC        |
| 004         | Nani          | P      | Surabaya | 2500000 | FIN        |
| 005         | Nurul         | P      | Tegal    | 4500000 | FIN        |
+-------------+---------------+--------+----------+---------+------------+
5 rows in set (0.00 sec)

Dari data-data diatas,


  • Tampilkan semua data dari table "employee" yang memiliki jenis kelamin laki-laki dan gaji lebih besar Rp 3.000.000? 
    Untuk menampilkan sesuai dengan kriteria diatas, Anda dapat menggunakan operator AND seperti query berikut ini: 

    mysql> SELECT * FROM employee
        -> WHERE gender = 'L'
        -> AND salary > 3000000;
    +-------------+---------------+--------+----------+---------+------------+
    | employee_id | employee_name | gender | address  | salary  | departemen |
    +-------------+---------------+--------+----------+---------+------------+
    | 003         | Ahmad         | L      | Semarang | 5000000 | ACC        |
    +-------------+---------------+--------+----------+---------+------------+
    1 row in set (0.00 sec)
    
  • Tampilkan semua data dari table "employee" yang memiliki jenis kelamin laki-laki dan gaji lebih besar Rp 10.000.000? 
    Untuk menampilkan sesuai dengan kriteria diatas, Anda dapat menggunakan operator AND seperti query berikut ini: 

    mysql> SELECT * FROM employee
        -> WHERE gender = 'L'
        -> AND salary > 10000000;
    Empty set (0.00 sec)
    
  • Tampilkan semua data dari table "employee" yang memiliki jenis kelamin perempuan atau gaji lebih besar Rp 3.000.000? 
    Untuk menampilkan sesuai dengan kriteria diatas, Anda dapat menggunakan operator OR seperti query berikut ini: 

    mysql> SELECT * FROM employee
        -> WHERE gender = 'P'
        -> OR salary > 3000000;
    +-------------+---------------+--------+----------+---------+------------+
    | employee_id | employee_name | gender | address  | salary  | departemen |
    +-------------+---------------+--------+----------+---------+------------+
    | 002         | Naura         | P      | Bandung  | 2000000 | HRD        |
    | 003         | Ahmad         | L      | Semarang | 5000000 | ACC        |
    | 004         | Nani          | P      | Surabaya | 2500000 | FIN        |
    | 005         | Nurul         | P      | Tegal    | 4500000 | FIN        |
    +-------------+---------------+--------+----------+---------+------------+
    4 rows in set (0.00 sec)
    
  • Tampilkan semua data dari table "employee" yang memiliki jenis kelamin perempuan atau departemen IT? 
    Untuk menampilkan sesuai dengan kriteria diatas, Anda dapat menggunakan operator OR seperti query berikut ini: 

    mysql> SELECT * FROM employee
        -> WHERE gender = 'P'
        -> OR departemen = 'IT';
    +-------------+---------------+--------+----------+---------+------------+
    | employee_id | employee_name | gender | address  | salary  | departemen |
    +-------------+---------------+--------+----------+---------+------------+
    | 001         | Nursalim      | L      | Jakarta  | 3000000 | IT         |
    | 002         | Naura         | P      | Bandung  | 2000000 | HRD        |
    | 004         | Nani          | P      | Surabaya | 2500000 | FIN        |
    | 005         | Nurul         | P      | Tegal    | 4500000 | FIN        |
    +-------------+---------------+--------+----------+---------+------------+
    4 rows in set (0.00 sec)
    

Author : Fyan

Komentar

Postingan populer dari blog ini

Login, Session, dan Logout

Cara Membuat File Setup / Installer Aplikasi Sendiri dengan Inno Setup Compiler