Select Random from a Database’s Table

Pernahkah Anda mencoba men-select beberapa data random dari tabel pada Database Anda?

Jika Anda menggunakan MySQL, maka perintahnya :

Select [fields] from [table_name] where [where_clause] order by rand()  limit m,n

Jika Anda menggunakan MSSQL, maka perintahnya :

Select top n [fields] from [table_name] where [where_clause] order by newid()

Jika Anda menggunakan Oracle, maka perintahnya :

Select [fields] from [table_name] where [where_clause] and rownum<=n order by dbms_random.Value

Contoh, saya punya tabel bank_soal yang berisi 1000 data.

bank_soal
==============
id auto_number primary key
soal text
tipe varchar
kunci_jawaban text

Saya ingin menampilkan 100 soal yang bertipe IPA secara random, maka query akan menjadi :

MySQL -> SELECT * FROM bank_soal WHERE tipe=’IPA’  ORDER BY rand() LIMIT 0,100

MSSQL -> SELECT TOP 100 * FROM bank_soal WHERE tipe=’IPA’  ORDER BY newid()

ORACLE ->

SELECT * FROM bank_soal WHERE tipe=’IPA’  and ROWNUM<=100 ORDER BY dbms_random.Value

atau lebih tepatnya :

SELECT * from (SELECT * FROM bank_soal WHERE tipe=’IPA’   ORDER BY dbms_random.Value) WHERE ROWNUM<=100

Query akan selalu menghasilkan data yang berbeda setiap kali dijalankan.

Silakan mencoba.

4 thoughts on “Select Random from a Database’s Table

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s