批量查询
最编程
2024-05-06 12:12:23
...
-
批量查询
- 1、功能:批量设置多个查询条件同时查询
- 2、其本语法:
-
3、实例演示:
- 任务1:在tp5_staff表中,查询年龄大于50,并且工资大于9500元的员工信息
- 4、总结:
-
批量查询
批量查询
批量查询,我们之前其实也用到过,就是把查询条件全部打包到一个数组中
1、功能:批量设置多个查询条件同时查询
2、其本语法:
- 将查询表达式写在where方法中
Db::table('表名') ->where([ '字段1' => ['表达式1','条件1'], '字段1' => ['表达式1','条件1'], , ······ ]) ->select();
- 条件较多时,事先打包到一个条件数组中,在where方法中直接引用
//1.创建查询条件数组 $map = []; $map['字段1' ] = ['表达式1','条件1']; $map['字段2' ] = ['表达式2','条件2']; $map['字段3' ] = ['表达式3','条件3']; //2.执行查询 Db::table('表名') ->where($map) -> select();
3、实例演示:
任务1:在tp5_staff表中,查询年龄大于50,并且工资大于9500元的员工信息
本例很简单,但会用到很多较复杂的语法,请留意
- Index.php 控制器代码:
<?php namespace app\index\controller; //导入数据库类 use think\Db; class Index { public function index(){ //1.设置查询字段 $field = []; $field['id'] = '编号'; $field['name'] = '姓名'; $field['salary'] = '工资'; //2.设置查询条件 $where = []; $where['age'] = ['>',50]; $where['salary'] = ['>',9500]; //3.执行查询 $result = Db::table('tp5_staff') -> field($field) -> where($where)->select(); //4.输出结果 dump($result); } }
- 运行结果:
array(3) { [0] => array(3) { ["编号"] => int(1023) ["姓名"] => string(9) "段王爷" ["工资"] => float(9560) } [1] => array(3) { ["编号"] => int(1028) ["姓名"] => string(6) "方方" ["工资"] => float(9877) } [2] => array(3) { ["编号"] => int(1006) ["姓名"] => string(9) "西门庆" ["工资"] => float(19801) } }
- 生成SQL语句:
SELECT `id` AS `编号`,`name` AS `姓名`,`salary` AS `工资` FROM `tp5_staff` WHERE `age` > 50 AND `salary` > 9500
4、总结:
批量设置还可以设置“OR”条件,请同学们自己完成。
上一篇: Servlet 框架