Data akan ditampilkan jika mempunyai kondisi atau kriteria yang bernilai true.
Where Clause tidak hanya digunakan pada Select statement saja, tetapi dapat juga digunakan pada Insert Statement, Delete Statement, Update statement, dan lain sebagainya.
Sintak Dasar
Di bawah ini adalah sintak dasar perintah Where clause di MySQL:
SELECT column1, column2, columnN FROM table_name WHERE [condition];
condition pada sintak diatas, dapat Anda gunakan dengan operator perbandingan atau operator logika seperti = (sama dengan), <> (tidak sama dengan), > (lebih besar dari), < (lebih kecil dari), Like, Not, Between, And, Or, dan lain sebagainya.
Contoh
Misalkan Anda telah memiliki sebuah tabel "TBL_PEGAWAI" dengan data-data sebagai berikut:
+------------+------------------+---------------+----------+------------+------------+ | id_pegawai | nama_pegawai | jenis_kelamin | gaji | alamat | departemen | +------------+------------------+---------------+----------+------------+------------+ | 1 | Nursalim | L | 1000000 | Brebes | IT | | 2 | Naura Krasiva | P | 1500000 | Tegal | FIN | | 3 | Nurul Anawariyah | P | 2000000 | Pemalang | HRD | | 4 | Achmad Fathoni | L | 3000000 | Batang | IT | | 5 | Nurul Hikmah | P | 9000000 | Pekalongan | DIR | | 6 | Iskiyati | P | 3000000 | Semarang | ACC | | 7 | Dodi Al Farizi | L | 3000000 | Kendal | FIN | | 8 | Susanto | L | 4500000 | Cilacap | MKT | | 9 | Susanti | P | 43500000 | Banyumas | MKT | | 10 | Doni Nugroho | L | 3750000 | Pemalang | HRD | +------------+------------------+---------------+----------+------------+------------+Dari data diatas,
- Tampilkan data pegawai yang mempunyai jenis kelamin laki-laki
mysql> SELECT * FROM tbl_pegawai -> WHERE jenis_kelamin = 'L'; +------------+----------------+---------------+---------+----------+------------+ | id_pegawai | nama_pegawai | jenis_kelamin | gaji | alamat | departemen | +------------+----------------+---------------+---------+----------+------------+ | 1 | Nursalim | L | 1000000 | Brebes | IT | | 4 | Achmad Fathoni | L | 3000000 | Batang | IT | | 7 | Dodi Al Farizi | L | 3000000 | Kendal | FIN | | 8 | Susanto | L | 4500000 | Cilacap | MKT | | 10 | Doni Nugroho | L | 3750000 | Pemalang | HRD | +------------+----------------+---------------+---------+----------+------------+ 5 rows in set (0.00 sec)
- Tampilkan data pegawai yang mempunyai gaji diatas Rp 2.000.000,00
mysql> SELECT * FROM tbl_pegawai -> WHERE gaji > 2000000; +------------+----------------+---------------+----------+------------+------------+ | id_pegawai | nama_pegawai | jenis_kelamin | gaji | alamat | departemen | +------------+----------------+---------------+----------+------------+------------+ | 4 | Achmad Fathoni | L | 3000000 | Batang | IT | | 5 | Nurul Hikmah | P | 9000000 | Pekalongan | DIR | | 6 | Iskiyati | P | 3000000 | Semarang | ACC | | 7 | Dodi Al Farizi | L | 3000000 | Kendal | FIN | | 8 | Susanto | L | 4500000 | Cilacap | MKT | | 9 | Susanti | P | 43500000 | Banyumas | MKT | | 10 | Doni Nugroho | L | 3750000 | Pemalang | HRD | +------------+----------------+---------------+----------+------------+------------+ 7 rows in set (0.00 sec)
- Tampilkan data pegawai yang mempunyai jenis kelamin laki-laki dan mempunyai gaji diatas Rp 2.000.000,00
mysql> SELECT * FROM tbl_pegawai -> WHERE jenis_kelamin = 'L' -> AND gaji > 2000000; +------------+----------------+---------------+---------+----------+------------+ | id_pegawai | nama_pegawai | jenis_kelamin | gaji | alamat | departemen | +------------+----------------+---------------+---------+----------+------------+ | 4 | Achmad Fathoni | L | 3000000 | Batang | IT | | 7 | Dodi Al Farizi | L | 3000000 | Kendal | FIN | | 8 | Susanto | L | 4500000 | Cilacap | MKT | | 10 | Doni Nugroho | L | 3750000 | Pemalang | HRD | +------------+----------------+---------------+---------+----------+------------+ 4 rows in set (0.00 sec)
- Tampilkan data pegawai yang mempunyai nama dengan huruf depan 'N'
mysql> SELECT * FROM tbl_pegawai -> WHERE nama_pegawai LIKE 'N%'; +------------+------------------+---------------+---------+------------+------------+ | id_pegawai | nama_pegawai | jenis_kelamin | gaji | alamat | departemen | +------------+------------------+---------------+---------+------------+------------+ | 1 | Nursalim | L | 1000000 | Brebes | IT | | 2 | Naura Krasiva | P | 1500000 | Tegal | FIN | | 3 | Nurul Anawariyah | P | 2000000 | Pemalang | HRD | | 5 | Nurul Hikmah | P | 9000000 | Pekalongan | DIR | +------------+------------------+---------------+---------+------------+------------+ 4 rows in set (0.00 sec)
- Tampilkan data pegawai yang mempunyai gaji dengan kisaran antara Rp 1.000.000,00 sampai dengan Rp 3.500.000,00
mysql> SELECT * FROM tbl_pegawai -> WHERE gaji BETWEEN 1000000 AND 3500000; +------------+------------------+---------------+---------+----------+------------+ | id_pegawai | nama_pegawai | jenis_kelamin | gaji | alamat | departemen | +------------+------------------+---------------+---------+----------+------------+ | 1 | Nursalim | L | 1000000 | Brebes | IT | | 2 | Naura Krasiva | P | 1500000 | Tegal | FIN | | 3 | Nurul Anawariyah | P | 2000000 | Pemalang | HRD | | 4 | Achmad Fathoni | L | 3000000 | Batang | IT | | 6 | Iskiyati | P | 3000000 | Semarang | ACC | | 7 | Dodi Al Farizi | L | 3000000 | Kendal | FIN | +------------+------------------+---------------+---------+----------+------------+ 6 rows in set (0.00 sec)
Salam sukses,
Nursalim
No comments:
Post a Comment