Query untuk paging pada Database Oracle
19 Maret 2014 2 Komentar
Pada tulisan sebelumnya telah disebutkan tentang perintah query untuk paging pada database mysql maka berikut ini akan disebutkan perintah query untuk paging pada database oracle.
Berbeda dengan MySQL yang memiliki perintah “limit”, pada database oracle tidak ada perintah langsung (yang saya tau :D) untuk memanggil dan membatasi baris tertentu saja. Ada perintah rownum tetapi perintah ini hanya membatasi jumlah row yng ditampilkan saja dan tidak bisa digunakan untuk membatasi baris sekian hingga sekian.
Untuk itu, perlu ada perintah untuk mendifinisikan suatu informasi tentang baris-baris yang sedang dipanggil, yaitu dengan menggunakan perintah row_num().
Contoh sebagai berikut:
select * from (select row_number() over (order by nama asc) baris, a.* from pegawai order by nama asc) where baris between 1 and 50
artinya, kita menambahkan satu field atau kolom bernama “baris” yang berisi nomor urut data yang sedang dipanggil baru kemudian kita pilih antara baris ke 1 sampai dengan baris ke 50.
Contoh kedua:
select * from (select row_number() over (order by nama asc) baris, a.* from pegawai order by nama asc) where baris between 51 and 100
artinya, kita mengambil baris ke 51 sampai dengan baris ke 100, dan begitu seterusnya.
Demikian, Semoga Bermanfaat.
Komentar Terakhir