Tp5_查询构造器,以及基本使用

2019-03-14  本文已影响0人  ZSGZ_AD
image.png image.png
image.png
 dump(
          Db::table('staff')
          ->field(['id','name','salary']) //指定查询字段 ,删除该行全部查询
          ->where('id','=',1006) //查询条件 如果相等 中间的=号可以去掉
          ->find()

        );
image.png image.png

数组方式:

  dump(
            //查询id>1003,selary>3000的数据
            Db::table('staff')
                ->field(['id', 'name', 'salary'])//指定查询字段 ,删除该行全部查询
                ->where([
                    'id' => ['>', 1003],
                    'salary' => ['>', 3000]
                ])//查询条件
                ->select()

        );

(推荐)闭包方式:

    dump(
        //查询id>1003,selary>3000的数据
            Db::table('staff')
                ->field(['id', 'name', 'salary'])//指定查询字段 ,删除该行全部查询
                ->where(function ($query) {
                    $query->where('id', '>', 1003)
                          ->where('salary', '>', 3000);
                })//查询条件
                ->select()
        );

闭包方式传参数:

  $salary = 3000;
        dump(
        //查询id>1003,selary>3000的数据
            Db::table('staff')
                ->field(['id', 'name', 'salary'])//指定查询字段 ,删除该行全部查询
                ->where(function ($query) use ($salary) {
                    $query->where('id', '>', 1003)
                          ->where('salary', '>', $salary);
                })//查询条件
                ->select()
        );
        $salary = 3000;
        dump(
        //查询id>1003,selary>3000的数据
            Db::select(
                function ($query) use ($salary) {
                    $query->table('staff')
                        ->field(['name' , 'salary'])
                        ->where([
                            'id' => ['>', 1003],
                            'salary' => ['>', $salary]
                        ]);
                }

结果是一样的:


image.png
上一篇下一篇

猜你喜欢

热点阅读