Laravel框架查询构造器详解:增删改查实例

0 下载量 114 浏览量 更新于2024-08-31 收藏 84KB PDF 举报
"Laravel框架查询构造器常见用法总结" 在Laravel框架中,查询构造器是一个强大的工具,它提供了简洁、可读性高的API来处理数据库查询,支持多种数据库系统,包括MySQL、PostgreSQL、SQLite等。通过使用查询构造器,开发者可以避免直接编写SQL语句,减少SQL注入的风险,并保持代码的整洁和可维护性。 **查询构造器的基本使用** 1. **插入数据** - **基础插入**:使用`DB::table()`方法指定表名,然后调用`insert()`方法传入一维数组,该数组的键对应列名,值对应列的值。如示例中的`['name'=>'Rarin','age'=>16]`。 - **获取插入ID**:如果需要获取新插入行的自增ID,可以使用`insertGetId()`方法,它会返回新生成的ID。例如,`DB::table('student')->insertGetId(['name'=>'Shen','age'=>'16'])`。 **查询数据** 2. **选择数据**:使用`select()`方法指定要选择的列,可以使用`*`代表所有列。例如,`DB::table('student')->select('name', 'age')`。 3. **条件查询**:可以使用`where()`方法添加条件,如`DB::table('student')->where('name', '=', 'Rarin')`。还有`orWhere()`、`whereIn()`、`whereNull()`等方法用于复杂条件。 4. **排序与分页**:使用`orderBy()`进行排序,如`DB::table('student')->orderBy('age', 'desc')`。`simplePaginate()`或`paginate()`用于分页。 5. **组合查询**:可以结合`where()`、`orWhere()`等方法,以及`join()`、`groupBy()`、`having()`等方法构建复杂的查询。 **更新数据** 6. **更新数据**:使用`update()`方法更新已有数据,如`DB::table('student')->where('id', 1)->update(['age' => 17])`。 7. **软删除**:Laravel支持软删除,通过`delete()`方法进行软删除,记录不会立即从数据库中移除,而是设置一个`deleted_at`字段。 **删除数据** 8. **物理删除**:`DB::table('student')->where('id', 1)->delete()`进行物理删除。 9. **软删除恢复**:对于已软删除的数据,可以使用`restore()`方法恢复。 **聚合函数** 10. **计数**:`count()`方法用于计算结果集的行数,如`DB::table('student')->count()`。 11. **最大值与最小值**:`max()`和`min()`分别用于获取某个列的最大值和最小值。 12. **平均值与总和**:`avg()`计算平均值,`sum()`计算总和。 **子查询** 13. **子查询**:可以嵌套查询构造器创建子查询,用于更复杂的查询逻辑。 Laravel查询构造器通过其丰富的API,使得数据库操作变得简单而直观,无论是在简单的数据操作还是在复杂的业务逻辑中,都能提供强大支持。通过熟练掌握这些用法,开发者可以高效地编写出安全、优雅的代码。