ホームページ  >  記事  >  PHPフレームワーク  >  laravelはmysqlデータベースからn個のデータをランダムに抽出します(高パフォーマンス)

laravelはmysqlデータベースからn個のデータをランダムに抽出します(高パフォーマンス)

藏色散人
藏色散人転載
2020-07-03 11:54:503866ブラウズ

Laravel の次のチュートリアル コラムでは、laravel が mysql データベースから n 個のデータをランダムに抽出する方法を紹介します。必要!

laravelはmysqlデータベースからn個のデータをランダムに抽出します(高パフォーマンス)laravel はどのようにして mysql データベースから n 個のデータを高パフォーマンスでランダムに取得しますか? 場合によっては、データベースからデータをランダムに取得する必要があることがよくあります (例: 10 個をランダムに割り当てる)スタッフの命令に従って、データベースから 100 人のユーザーをランダムにチェックするように、データベースからデータをランダムに取得する必要があります。

1. ネイティブ SQL を使用してデータベースから 100 個のデータを取得します

Mysql

公式 Web サイトからわかるように、次のことができます。 ORDER BY RAND () LIMIT と一緒に使用すると、結果の複数行からランダムな部分を選択できます。 <pre class="brush:php;toolbar:false;">SELECT * FROM table WHERE name=&quot;&quot; ORDER BY RAND() LIMIT 100;</pre>次に示すように、laravel でネイティブ SQL を使用することも非常に簡単です:

$info = DB::select(&#39;SELECT * FROM table WHERE name="" ORDER BY RAND() LIMIT 100&#39;);

2. オリジナルの式を使用してデータからランダムにデータを取得します

laravel の元の式は誰もが知っているので、

DB::raw('RAND()')

を使用してデータベースからランダムなデータを取得できます。同時に、orderByRaw('RAND()') を使用してデータベースからランダムにデータを取得することもできます。これは、DB::raw('RAND()' と同じ効果があります) )<pre class="brush:php;toolbar:false;">$info=self::where(&amp;#39;dealing&amp;#39;,&amp;#39;&lt;&gt;&amp;#39;,&amp;#39;&amp;#39;) -&gt;orderBy(DB::raw(&amp;#39;RAND()&amp;#39;)) -&gt;take(5) -&gt;get();</pre>

3. laravel の inRandomOrder メソッドを使用してデータをランダムに取得します

laravel は

inRandomOrder

を使用して、達成するデータの結果をランダムに並べ替えますデータベースからデータをランダムに取得することが目的です。効果: <pre class="brush:php;toolbar:false;">$info = DB::table(&amp;#39;users&amp;#39;) -&gt;inRandomOrder() -&gt;take(5) -&gt;get();</pre>

以上がlaravelはmysqlデータベースからn個のデータをランダムに抽出します(高パフォーマンス)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。