[解決済み】Laravel - EloquentまたはFluentランダム行
2022-03-25 22:25:40
質問
LaravelフレームワークでEloquentまたはFluentを使用してランダムな行を選択するにはどうすればよいですか?
SQLを使えば、RAND()でオーダーできることは知っています。しかし、私はランダムな行を取得したいです なし 最初のクエリより前のレコードの数をカウントする必要があります。
何かアイデアはありますか?
解決方法は?
Laravel >= 5.2:
User::inRandomOrder()->get();
または、特定のレコード数を取得するために
// 5 indicates the number of records
User::inRandomOrder()->limit(5)->get();
// get one random record
User::inRandomOrder()->first();
を使用するか、または ランダム メソッドでコレクションを作成します。
User::all()->random();
User::all()->random(10); // The amount of items you wish to receive
Laravel 4.2.7 - 5.1。
User::orderByRaw("RAND()")->get();
Laravel 4.0 - 4.2.6。
User::orderBy(DB::raw('RAND()'))->get();
Laravel 3:
User::order_by(DB::raw('RAND()'))->get();
チェック この記事 をMySQLのランダム行に追加しました。Laravel 5.2はこれをサポートしています。 RAWクエリ .
1を編集します。 ダブルグラさんがおっしゃるように、orderBy()はASCかDESC以外を許さないので これ を変更しました。それに伴い、私の回答も更新しました。
2を編集します。 Laravel 5.2 でようやく実装された ラッパー関数 このために その名も inRandomOrder() .
関連
-
[解決済み】mysqli_result クラスのオブジェクトを文字列に変換できない
-
[解決済み] JavaScriptでランダムな文字列/文字を生成する
-
[解決済み] JavaScriptで特定の範囲のランダムな整数を生成する?
-
[解決済み] 乱数(int)を生成する方法を教えてください。
-
[解決済み] JavaScriptで2つの数値の間の乱数を生成する
-
[解決済み] 英数字のランダムな文字列を生成する方法
-
[解決済み] ランダムな文字列を使用するこのコードは、なぜ "hello world" と表示されるのですか?
-
[解決済み] 0から9までのランダムな整数を生成する
-
[解決済み] SQL Server テーブルからランダムな n 行を選択する
-
[解決済み】大文字と数字を含むランダムな文字列の生成
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】接続の取得に失敗しました: php_network_getaddresses: getaddrinfo failed: 名前またはサービスが不明
-
[解決済み】phpのob_start()の使い道は?
-
[解決済み】DateTimeクラスのオブジェクトを文字列に変換できない
-
[解決済み】foreach()に与えられた引数が無効です。)
-
[解決済み】未定義のメソッド mysqli_stmt::get_result を呼び出す。
-
[解決済み】メッセージ。Trying to access array offset on value of type null [重複]配列のオフセットにアクセスしようとしています。
-
[解決済み】PHPの予期しないT_VARIABLEとは何ですか?
-
[解決済み】chromeの「net : Failed to load resource: net::ERR_SPDY_PROTOCOL_ERROR" は何がおかしいのか?
-
[解決済み】Netbeans 7.4 for PHPで「スーパーグローバルな$_POST配列に直接アクセスしないでください」という警告が発生する。
-
[解決済み】phpのシンタックスエラー、予期しないT_IFエラーを修正する方法は?[クローズド]。