を取得し、私は私の質問があるのRails:<pre><code>User.first </code></pre> <p></p> 、私は私がして、コマンドラインで私のデータベースの最初のユーザーを見つけることができます知っているn番目のテーブルレコード
User.last
と最後を見つけることができますどのように私はデータベースの11番目のユーザーを呼び出すだろう。あなたがorder
でoffset
を使用することができます
を取得し、私は私の質問があるのRails:<pre><code>User.first </code></pre> <p></p> 、私は私がして、コマンドラインで私のデータベースの最初のユーザーを見つけることができます知っているn番目のテーブルレコード
User.last
と最後を見つけることができますどのように私はデータベースの11番目のユーザーを呼び出すだろう。あなたがorder
でoffset
を使用することができます
をあなたはUser.allは、あなたが行うことができます11日、ユーザーにアクセスするには0から始まるあなたのインデックスの配列やオブジェクトを与える
User.all[10]
を行うことができますそれ。
:
User.offset(10).order(:id).first
あなたは行うことができます。このように見えるSQL文に作業を軽減
User.limit(1).offset(10)
:
SELECT `users`.* FROM `users` LIMIT 1 OFFSET 10
メモリにすべてのユーザーをロードしてから11日を見つけることが必要になりますall
を使用しますその配列に1つ。かなり高価です。
これは構文的には気に入っていますが、実際には必要なものを得るには最も費用がかかります。これにより、すべてのユーザーがメモリにロードされ、結果の配列の10番目のものにアクセスできます。 – jaydel