On Feb 20, 2011, at 4:30 PM, Christophe Pettus wrote:

> 
> On Feb 20, 2011, at 2:19 PM, galago wrote:
> 
>> What is the best way, to select X random rows from DB? I know that method: 
>> .all().order_by('?')[:X] is not good idea.
> 
> The best way is to push it onto the DB, using a raw query:
> 
>       random_results = Table.objects.raw("SELECT * FROM table ORDER BY 
> random() LIMIT X")

If you have lots of rows, this query is really slow as the db must build a new 
table for the ORDER BY.

--
Eric Chamberlain, Founder
RF.com - http://RF.com/







-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to