# Random record retrieval from database

**URL:** <https://www.ruby-forum.com/t/random-record-retrieval-from-database/175973>\
**Category:** Ruby\
**Created:** [September 23, 2009, 7:57am UTC](https://www.ruby-forum.com/t/random-record-retrieval-from-database/175973 "2009-09-23T07:57:42Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![subashinikumar](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/0ea827/32.png) [@subashinikumar](https://www.ruby-forum.com/u/subashinikumar)\
**Post date:** [September 23, 2009, 7:57am UTC](https://www.ruby-forum.com/t/random-record-retrieval-from-database/175973/1 "2009-09-23T07:57:42Z")

</div>

How can i choose some “n” (n is gonna be fixed )records randomly from a  
mysql database table from our controller?

---

<div class="post-metadata">

**Author:** ![subashinikumar](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/0ea827/32.png) [@subashinikumar](https://www.ruby-forum.com/u/subashinikumar)\
**Post date:** [September 23, 2009, 9:01am UTC](https://www.ruby-forum.com/t/random-record-retrieval-from-database/175973/2 "2009-09-23T09:01:11Z")

</div>

Hi,

> How can i choose some “n” (n is gonna be fixed )records randomly from  
> a mysql database table from our controller?

What I usually do is compute a column using a random function (mysql  
has one) and then order by that column. You can use LIMIT to only  
retrieve some results.

This is going to be CPU/Disk intensive if your table is very large.

kaspar
