30 Aug
duccio

duccio il 30 August 2007 parla di Rails Snippet

Rails: recuperare records random

Se vi servisse recuperare record in modo randomico da una tabella potete farlo semplicemente ordinandoli con il rand() di MySql.

    1       def self.random_item(limit = 2)
    2         find(:all, :order => 'rand()', :limit => limit)
    3       end

In questo modo potete specificare anche un limit per recuperare solo alcuni record.

2 Commenti a “Rails: recuperare records random”

  1. ogeidix il 30 August 2007 alle 22:01 dice:

    Ciao,
    mi permetto di aggiungere una piccola nota per evitare ad altri di perdere tempo in problemi già incontrati. Quanto detto sopra vale SOLO x mysql. Se usate altri database l’istruzione sql rand() potrebbe cambiare.

    Per sqlite3 e postgresql bisogna usare random()

    Per altre informazioni:
    http://wiki.rubyonrails.org/rails/show/HowtoSelectRandomRecords

    Ciao a tutti

  2. duccio il 31 August 2007 alle 08:49 dice:

    Hai fatto benissimo a precisarlo, avrei dovuto specificarlo meglio io nel post ma l’abitudine all’uso di MySql spesso mi fa dimenticare gli altri Db :-)

    Grazie

Scrivi un commento