📅  最后修改于: 2023-12-03 15:38:19.162000             🧑  作者: Mango
在 Laravel 8 中,可以使用 Eloquent ORM 来查询数据库并获取特定列。以下是获取特定列的几种不同的方法。
使用 select 方法来获取指定列。可以传递列名的数组,或逗号分隔的列名字符串。
$users = DB::table('users')
->select('name', 'email')
->get();
或者:
$users = DB::table('users')
->select(['name', 'email'])
->get();
在查询构造器中,使用 selectRaw 方法来获取特定列的原始 SQL 表达式。
$users = DB::table('users')
->selectRaw('count(*) as user_count, status')
->groupBy('status')
->get();
使用 pluck 方法来获取单个列的值。传递列名作为参数。
$titles = DB::table('posts')->pluck('title');
使用 value 方法来获取单一值。传递列名作为参数。
$myEmail = DB::table('users')->where('name', 'John')->value('email');
注意:使用 value 方法时,查询结果必须是单行单列,否则将会抛出异常。
使用 first 和 last 方法来获取第一行或最后一行记录。如果不提供参数,则返回整个行。
$firstRow = DB::table('users')->first();
$lastRow = DB::table('users')->latest()->first();
如果要获取特定列,可以在 first 或 last 方法后面使用 select 方法。
$name = DB::table('users')->where('name', 'John')->select('name')->first();
以上是在 Laravel 8 中获取特定列的几种方法。选择适当的方法将有助于优化您的查询,并且确保您只检索出需要的数据。