Menyoal pangkalan data adalah operasi yang sangat biasa apabila membangunkan aplikasi Laravel, terutamanya untuk aplikasi web yang perlu membentangkan sejumlah besar data. Walau bagaimanapun, kadangkala kita hanya perlu memilih beberapa lajur tertentu dan bukannya semua lajur dalam keseluruhan jadual. Artikel ini akan memperkenalkan cara membuat pertanyaan beberapa medan dalam Laravel.
Laravel menyediakan pembina pertanyaan yang berkuasa yang boleh membantu kami berinteraksi dengan pangkalan data dengan mudah. Kita boleh menggunakan kaedah select
untuk mengehadkan lajur yang kita perlukan.
Sebagai contoh, kami mempunyai jadual users
, yang mengandungi tiga medan: id
, name
dan email
. Jika kita hanya perlu memilih dua medan ini, kita boleh menulis:
$users = DB::table('users')->select('name', 'email')->get();
Dalam contoh ini, kami telah menentukan lajur select
dan name
menggunakan kaedah email
. Objek $users
yang dikembalikan hanya akan mengandungi dua lajur ini.
Sudah tentu, kami juga boleh memilih untuk menggunakan select
untuk memilih semua lajur, dan kemudian menggunakan kaedah exclude
untuk mengecualikan lajur yang kami tidak perlukan. Contohnya:
$users = DB::table('users')->select('*')->exclude('id')->get();
Dalam contoh ini, kami mula-mula menggunakan kaedah select
untuk memilih semua lajur, dan kemudian menggunakan kaedah exclude
untuk mengecualikan lajur id
. Objek $users
yang dikembalikan hanya akan mengandungi lajur name
dan email
.
Eloquent ialah alat ORM (Object Relational Mapping) dalam Laravel yang boleh membantu kami mengendalikan pangkalan data dalam PHP dengan lebih mudah. Eloquent mempunyai pendekatan yang serupa dengan pembina pertanyaan yang membolehkan kami memasukkan hanya lajur yang diperlukan dalam pertanyaan.
Sebagai contoh, kita boleh mencipta model Eloquent bernama User
, yang sepadan dengan jadual users
:
namespace App; use IlluminateDatabaseEloquentModel; class User extends Model { protected $table = 'users'; }
Kami kemudiannya boleh menggunakan kaedah select
untuk memasukkan hanya yang diperlukan lajur:
$users = User::select('name', 'email')->get();
atau gunakan kaedah exclude
untuk mengecualikan lajur yang tidak diingini:
$users = User::exclude('id')->get();
Kaedah ini sangat serupa dengan yang disediakan oleh pembina pertanyaan.
Menyoal pangkalan data ialah operasi biasa, dan dalam Laravel kita boleh mengehadkan lajur yang kita perlukan dengan mudah menggunakan pembina pertanyaan dan model Eloquent. Ini bukan sahaja mengurangkan jumlah data yang dipindahkan, ia juga meningkatkan prestasi aplikasi kami. Semoga artikel ini bermanfaat kepada anda.
Atas ialah kandungan terperinci laravel menanyakan beberapa medan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!