Berbicara tentang limit di Oracle tidak mendefinisikan
limit. Jadi disini akan dimanipulasi dengan menggunakan rownum, rownum sebagai
kolom yang menginisialkan baris setiap record seperti nomor urut atau bisa
disebut id auto increment.
Perbedaan limit di mysql dan oracle seperti ini format
syntaxnya:
MySQL :
Select record_1,record_2 from table_1 where kriteria limit nilai_awal, banyak_record
Oracle :
SELECT * FROM (SELECT *, ROWNUM rnum FROM (SELECT record_1, record_2 FROM table_1 where kriteria ) WHERE ROWNUM <= nilai_akhir) WHERE rnum >= nilai_awalatau
SELECT *, ROWNUM FROM (SELECT record_1, record_2 FROM table_1 where kriteria) WHERE ROWNUM between nilai_awal and nilai_akhir
Jadi apabila ada tabel_person seperti
nama
|
alamat
|
kota
|
toni | kuningan | jakarta |
yopi | kedung | surabaya |
satria | kalibaru | kebumen |
darma | tegalan | malang |
nuri | mojosari | mojokerto |
adi | suropati | nganjuk |
syntax MySQL:
Select nama, alamat, kota from table_person limit 2, 3
syntax Oracle:
SELECT * FROM (SELECT a.*, ROWNUM rnum FROM (SELECT nama, alamat, kota FROM table_person ) a WHERE ROWNUM <= 5) WHERE rnum >= 2atau
SELECT a.* FROM (SELECT a.*, rownum nomor from table_person a) a where nomor between 2 and 5
maka hasilnya adalah
nama
|
alamat
|
kota
|
yopi | kedung | surabaya |
satria | kalibaru | kebumen |
darma | tegalan | malang |
nuri | mojosari | mojokerto |
Tidak ada komentar:
Posting Komentar