Laravel 的数据库查询构造器提供了一种简洁、易于理解的方式来创建和执行数据库查询。它允许你使用链式方法来构建查询,而无需编写复杂的 SQL 语句。Laravel 的查询构造器支持多种数据库类型,包括 MySQL、PostgreSQL、SQLite 和 SQL Server。
以下是 Laravel 查询构造器的一些常用方法:
select
:选择要查询的列。
$users = DB::table('users')->select('id', 'name', 'email')->get();
where
:添加查询条件。
$users = DB::table('users')->where('age', 25)->get();
orWhere
:添加 OR 查询条件。
$users = DB::table('users')->where('age', 25)->orWhere('name', 'John')->get();
whereIn
:添加 IN 查询条件。
$users = DB::table('users')->whereIn('id', [1, 2, 3])->get();
whereNotIn
:添加 NOT IN 查询条件。
$users = DB::table('users')->whereNotIn('id', [1, 2, 3])->get();
whereBetween
:添加 BETWEEN 查询条件。
$users = DB::table('users')->whereBetween('created_at', [Carbon\Carbon::now()->subDays(7), Carbon\Carbon::now()])->get();
whereNotBetween
:添加 NOT BETWEEN 查询条件。
$users = DB::table('users')->whereNotBetween('created_at', [Carbon\Carbon::now()->subDays(7), Carbon\Carbon::now()])->get();
whereNull
:添加 WHERE NULL 查询条件。
$users = DB::table('users')->whereNull('phone')->get();
whereNotNull
:添加 WHERE NOT NULL 查询条件。
$users = DB::table('users')->whereNotNull('phone')->get();
whereColumn
:添加 WHERE COLUMN 查询条件。
$users = DB::table('users')->whereColumn('name', 'John')->get();
orderBy
:对查询结果进行排序。
$users = DB::table('users')->orderBy('name', 'asc')->get();
groupBy
:对查询结果进行分组。
$users = DB::table('users')->groupBy('country')->get();
count
:计算查询结果的数量。
$count = DB::table('users')->count();
min
:计算查询结果的最小值。
$minAge = DB::table('users')->min('age');
max
:计算查询结果的最大值。
$maxAge = DB::table('users')->max('age');
sum
:计算查询结果的总和。
$totalAge = DB::table('users')->sum('age');
avg
:计算查询结果的平均值。
$averageAge = DB::table('users')->avg('age');
delete
:删除查询结果。
DB::table('users')->where('id', 1)->delete();
insert
:插入数据。
DB::table('users')->insert([ 'name' => 'John', 'email' => 'john@example.com', 'password' => bcrypt('password'), ]);
update
:更新查询结果。
DB::table('users') ->where('id', 1) ->update([ 'name' => 'Jane', ]);
这只是 Laravel 查询构造器的一部分方法,更多方法可以参考 Laravel 文档:https://laravel.com/docs/8.x/queries