Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Memilih Baris Rawak dalam Laravel Menggunakan Fasih dan Fasih?

Bagaimana untuk Memilih Baris Rawak dalam Laravel Menggunakan Fasih dan Fasih?

Barbara Streisand
Lepaskan: 2024-11-12 00:42:03
asal
564 orang telah melayarinya

How to Select Random Rows in Laravel Using Eloquent and Fluent?

Memilih Baris Rawak dalam Laravel Menggunakan Fasih dan Fasih

Apabila bekerja dengan set data yang besar, selalunya perlu mendapatkan semula baris rawak daripada pangkalan data tanpa perlu melakukan kiraan persediaan. Laravel menyediakan beberapa pilihan untuk mencapai ini menggunakan kedua-dua antara muka Eloquent dan Fluent.

Eloquent

Laravel 5.2 dan ke atas menawarkan kaedah inRandomOrder():

User::inRandomOrder()->get();
Salin selepas log masuk

Kaedah ini mengembalikan koleksi semua baris rawak daripada model yang ditentukan. Untuk mengehadkan bilangan baris yang diambil, gunakan kaedah limit():

User::inRandomOrder()->limit(5)->get();
Salin selepas log masuk

Untuk mendapatkan satu baris rawak, gunakan kaedah first():

User::inRandomOrder()->first();
Salin selepas log masuk

Untuk versi lama daripada Laravel (4.2.7 - 5.1), anda boleh menggunakan kaedah orderByRaw():

User::orderByRaw("RAND()")->get();
Salin selepas log masuk

Untuk Laravel versi 4.0 - 4.2.6, gunakan:

User::orderBy(DB::raw('RAND()'))->get();
Salin selepas log masuk

Fasih

Dalam versi Laravel sebelum 5.2, kaedah order_by() telah digunakan dengan fungsi pembantu DB::raw():

User::order_by(DB::raw('RAND()'))->get();
Salin selepas log masuk

Tambahan Pertimbangan

Adalah penting untuk ambil perhatian bahawa kaedah orderBy() tidak membenarkan sebarang hujah selain ASC atau DESC pada masa ini. Oleh itu, adalah perlu untuk menggunakan kaedah orderByRaw() atau kaedah inRandomOrder() untuk memilih baris rawak.

Pertimbangan Prestasi

Apabila mendapatkan sejumlah besar baris, ia adalah penting untuk mempertimbangkan kesan ke atas prestasi. Menggunakan kaedah inRandomOrder() mungkin lebih cekap daripada menggunakan kaedah orderByRaw(), kerana ia tidak memerlukan subquery tambahan untuk menjana pesanan rawak.

Atas ialah kandungan terperinci Bagaimana untuk Memilih Baris Rawak dalam Laravel Menggunakan Fasih dan Fasih?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan