Mengurutkan dengan Tatanan Sendiri - MySQL Dasar #48

Mengurutkan dengan tatanan sendiri adalah sebuah proses pengurutan query dengan klausa order by dimana ada nilai - nilai tertentu yang didahulukan berdasarkan parameter FIELD() yang menyertainya.

Daftar isi Pengurutan Query : Pengurutan Hasil Query

Misalnya disini Anda ingin menampilkan/mengurutkan data pada tabel daftar_supir berdasarkan nama supir Henry, Susi dan Ben, nilai - nilai kemiripan pada daftar tersebut akan didahulukan ditampilkan didalam pengurutan

MariaDB [root93]> SELECT * FROM daftar_supir ORDER by nama;
+--------+-------+----------------+------+
| id_rek | nama  | tanggal_travel | km   |
+--------+-------+----------------+------+
|      4 | Ben   | 2014-11-29     |  131 |
|      8 | Ben   | 2014-12-02     |  837 |
|      3 | Henri | 2014-11-27     |  367 |
|      2 | Henry | 2014-11-29     |  300 |
|      5 | Henry | 2014-11-26     |  278 |
|      7 | Henry | 2014-12-01     |  273 |
|      9 | Henry | 2014-11-30     |  574 |
|      1 | Susi  | 2014-11-29     |  391 |
|      6 | Susi  | 2014-12-02     |  502 |
+--------+-------+----------------+------+
9 rows in set (0.00 sec)

MariaDB [root93]> SELECT * FROM daftar_supir
    -> ORDER by FIELD(nama, 'Henry','Susi','Ben');
+--------+-------+----------------+------+
| id_rek | nama  | tanggal_travel | km   |
+--------+-------+----------------+------+
|      3 | Henri | 2014-11-27     |  367 |
|      2 | Henry | 2014-11-29     |  300 |
|      5 | Henry | 2014-11-26     |  278 |
|      7 | Henry | 2014-12-01     |  273 |
|      9 | Henry | 2014-11-30     |  574 |
|      1 | Susi  | 2014-11-29     |  391 |
|      6 | Susi  | 2014-12-02     |  502 |
|      4 | Ben   | 2014-11-29     |  131 |
|      8 | Ben   | 2014-12-02     |  837 |
+--------+-------+----------------+------+
9 rows in set (0.00 sec)

Pada parameter FIELD Anda bisa menggunakan kombinasi dengan substring - substring kolom seperti dalam pembahasan mengurutkan berdasarkan panjang substring. Misalnya disini saya akan menampilkan nilai - nilai ID, SG, JP, US dan UK terlebih dahulu didalam pengurutan

MariaDB [root93]> SELECT * FROM rumah
    -> ORDER by
    -> FIELD(RIGHT(id,2),'ID','SG','JP','US','UK');
+-------------+----------------+
| id          | deskripsi      |
+-------------+----------------+
| RMM40672ID  | meja makan     |
| MND00415ID  | bath tube      |
| TDR0038SG   | lampu tidur    |
| DPR01729JP  | kulkas         |
| MND004485US | shower         |
| DPR00372UK  | oven microwave |
+-------------+----------------+
6 rows in set (0.00 sec)

Baca Selanjutnya : Mengurutkan ENUM - MySQL Dasar #49

0 Response to "Mengurutkan dengan Tatanan Sendiri - MySQL Dasar #48"

Post a Comment

Komentar yang Anda kirim akan terlebih dahulu di moderasi oleh Admin