Menggunakan BETWEEN Clause Di MySQL

0
Between Clause digunakan untuk menampilkan data berdasarkan range atau rentang tertentu. Sebagai contoh misalkan, menampilkan data pegawai yang memiliki rentang umur dari 20-30 tahun, dan lain sebagainya.

Between clause tidak hanya digunakan pada select statement saja, tetapi dapat digunakan juga pada update dan delete statement juga.

Sintak Dasar


Di bawah ini adalah sintak dasar penggunaan Between clause pada select statement:

SELECT nama_kolom1, nama_kolom2, nama_kolom3,...
FROM nama_tabel
WHERE nama_kolom BETWEEN awal_range AND akhir_range;

Dimana,

  • nama_kolom1, nama_kolom2, nama_kolom3, dan seterusnya adalah kolom-kolom yang akan ditampilkan.
  • nama_tabel adalah tabel yang datanya akan ditampilkan.
  • awal_range dan akhir_range adalah batas awal dan batas akhir dari BETWEEN clause.

Contoh


Misalkan Anda telah memiliki sebuah tabel pegawai dengan data-data sebagai berikut:

mysql> SELECT * FROM karyawan;
+------------+---------------+---------------+-----------+------+----------+------------+
| id_pegawai | nama_lengkap  | jenis_kelamin | alamat    | umur | gaji     | departemen |
+------------+---------------+---------------+-----------+------+----------+------------+
| P001       | Nursalim      | L             | Jakarta   |   27 | 15000000 | IT         |
| P002       | Iskiyati      | P             | Bandung   |   23 |  7000000 | MKT        |
| P003       | Nurul Hikmah  | P             | Semarang  |   20 |  4000000 | HR         |
| P004       | Ahmad Fatoni  | L             | Cirebon   |   26 | 10000000 | IT         |
| P005       | Sri Rahayu    | P             | Surabaya  |   25 |  8000000 | ACC        |
| P006       | Naura Krasiva | P             | Magelang  |   21 |  3000000 | HR         |
| P007       | Ana Fauziyah  | P             | Tegal     |   22 |  4500000 | SLS        |
| P008       | Irwan Gunawan | L             | Tangerang |   30 | 11000000 | FIN        |
| P009       | Ali Amrullah  | L             | Jakarta   |   28 |  8500000 | IT         |
| P010       | Andi Lala     | L             | Bogor     |   23 |  6000000 | FIN        |
+------------+---------------+---------------+-----------+------+----------+------------+
10 rows in set (0.00 sec)

Dari data-data diatas, coba Anda kerjakan soal-soal berikut ini:

  • Tampilkan data pegawai yang memiliki rentang umur dari 25 sampai dengan 30 tahun?.
    mysql> SELECT * FROM karyawan
        -> WHERE umur BETWEEN 25 AND 30;
    +------------+---------------+---------------+-----------+------+----------+------------+
    | id_pegawai | nama_lengkap  | jenis_kelamin | alamat    | umur | gaji     | departemen |
    +------------+---------------+---------------+-----------+------+----------+------------+
    | P001       | Nursalim      | L             | Jakarta   |   27 | 15000000 | IT         |
    | P004       | Ahmad Fatoni  | L             | Cirebon   |   26 | 10000000 | IT         |
    | P005       | Sri Rahayu    | P             | Surabaya  |   25 |  8000000 | ACC        |
    | P008       | Irwan Gunawan | L             | Tangerang |   30 | 11000000 | FIN        |
    | P009       | Ali Amrullah  | L             | Jakarta   |   28 |  8500000 | IT         |
    +------------+---------------+---------------+-----------+------+----------+------------+
    5 rows in set (0.20 sec)
    

    Query diatas equivalent dengan query di bawah ini:
    mysql> SELECT * FROM karyawan
        -> WHERE umur >= 25 AND umur <=30;
    +------------+---------------+---------------+-----------+------+----------+------------+
    | id_pegawai | nama_lengkap  | jenis_kelamin | alamat    | umur | gaji     | departemen |
    +------------+---------------+---------------+-----------+------+----------+------------+
    | P001       | Nursalim      | L             | Jakarta   |   27 | 15000000 | IT         |
    | P004       | Ahmad Fatoni  | L             | Cirebon   |   26 | 10000000 | IT         |
    | P005       | Sri Rahayu    | P             | Surabaya  |   25 |  8000000 | ACC        |
    | P008       | Irwan Gunawan | L             | Tangerang |   30 | 11000000 | FIN        |
    | P009       | Ali Amrullah  | L             | Jakarta   |   28 |  8500000 | IT         |
    +------------+---------------+---------------+-----------+------+----------+------------+
    5 rows in set (0.00 sec)
    
  • Tampilkan data pegawai yang memiliki rentang umur diluar dari 25 sampai dengan 30 tahun?.
    mysql> SELECT * FROM karyawan
        -> WHERE umur NOT BETWEEN 25 AND 30;
    +------------+---------------+---------------+----------+------+---------+------------+
    | id_pegawai | nama_lengkap  | jenis_kelamin | alamat   | umur | gaji    | departemen |
    +------------+---------------+---------------+----------+------+---------+------------+
    | P002       | Iskiyati      | P             | Bandung  |   23 | 7000000 | MKT        |
    | P003       | Nurul Hikmah  | P             | Semarang |   20 | 4000000 | HR         |
    | P006       | Naura Krasiva | P             | Magelang |   21 | 3000000 | HR         |
    | P007       | Ana Fauziyah  | P             | Tegal    |   22 | 4500000 | SLS        |
    | P010       | Andi Lala     | L             | Bogor    |   23 | 6000000 | FIN        |
    +------------+---------------+---------------+----------+------+---------+------------+
    5 rows in set (0.00 sec)
    
    
Sekian Panduan Tutorial Penggunaan Between Clause Di MySQL. Semoga bermanfaat & Happy Learning MySQL.

Salam,

Nursalim

0 Comments