The Way Of Life: Cara Membuat Query Nomor Urut pada MySQL
Google

Thursday, September 02, 2021

Cara Membuat Query Nomor Urut pada MySQL

Nomor Urut Pada hasil Query MySQL

Pada saat kita membuat sebuah Query pada database MySQL menggunakan perintah SQL. Tentu kadang kita memerlukan suatu nilai nomor urut atau urutan baris record agar ketika kita menampilkan pada interface aplikasi kita tidak perlu membuat nomor urut lagi pada codingan front end. Jadi idenya bagaimana membuat data yang kita tampilkan sudah matang sehingga codingan pada front end bisa sesimple mungkin agar mudah di-maintenance.

Ada dua cara yang sudah pernah saya coba yaitu :

1. Menggunakan perintah ROW_ NUMBER(), perintah ini hanya disupport oleh database MySQL versi  8 ke atas, jadi jika anda menggunakan database MySQL  versi lama perintah ini tidak bisa dieksekusi oleh MySQL.                                                                      

SELECT ROW_NUMBER() OVER () AS NoUrut,..FROM table


2. Menggunakan perintah di bawah ini

SET @Urut = 0;

SELECT @Urut := @Urut + 1 as NoURut,fs_kd_pekerjaan,fs_nm_pekerjaan FROM tm_pekerjaan


Perintah ini bisa digunakan untuk database MySQL versi 8 ke bawah ( versi lama ). Untuk versi baru juga bisa banget. Jadi cara nomor 2 ini bisa digunakan untuk semua versi MySQL.

Mana  cara yang lebih baik dari kedua cara tersebut?

Setelah saya bandingkan untuk memproses data yang sedikit kedua cara tesebut tidak ada bedanya lama prosesnya jika kita memakai ukuran waktu tunggu manusia. Jika menggunakan ukuran waktu tunggu mesin komputer yaitu  beda 0.00 sekian detik.

Cara Pertama (134 total, Query took 0.0033 seconds.)

Cara Kedua  (134 total, Query took 0.0019 seconds.)

Tetapi jika  data yang diproses sangat banyak (puluhan ribu record lebih) cara kedua lebih saya sarankan karena jauh lebih cepat. Tetapi jika anda ingin mencobanya sendiri silakan, nanti bisa share di sini. 

Mengapa fungsi ROW_NUMBER lebih lambat?

Karena fungsi ROW_NUMBER tidak sesederhana itu, fungsinya jauh lebih kompleks, untuk detail penggunaan ROW_NUMBER yang lebih lengkap, anda bisa lihat disini.

Semoga tips ini bermanfaat.

Labels: , , ,

0 Comments:

Post a Comment

<< Home