Thinkphp 常用的数据库操作

2023-05-12507

1、select


         $list = Db::name('system_admin')   //表名

                ->withoutField('password')      //不包含哪个字段   

                ->where($where)                    //where条件


                ->field()                                 //字段

                ->page($page, $limit)            //分页

                ->order($this->sort)              //排序


                ->group()                             //分组


                ->limit()                               //显示几条

                ->select()


                ->toArray();


这样得到的$list就是多维数组。


这里再给个关于OR的例子


$list = Db::name('system_admin')->where($where)->where('status',1)

                 ->where(function($query){

                     $adminid = session('admin.id');

                     $query->where('applicant_id',$adminid)

                          ->whereOr('step',$adminid);

                 })

                  ->select()->toArray();


2、find


 $info= Db::name('system_admin')->where('id',$id)->find();


可以简化成


 $info= Db::name('system_admin')->find($id);


这里的$info是个一维数组


3、value


$name= Db::name('system_admin')->where('id',$id)->value('name');


直接获取id为$id的name值


4、count


$num=Db::name('system_admin')->where('status',1)->count();


直接获取符合条件的数量


5、sum


$money= Db::name('system_admin')->where('status',1)->sum('money');


直接获取合计值


6、insert     insertAll


$data['name']='sail';


$result=Db::name('system_admin')

                    ->insert($data);


上面是插入一行


$data[0]['name']='sail';


$data[1]['name']='ty';


$result=Db::name('system_admin')

                    ->insertAll($data);


这是插入多行


7、save  saveAll  


插入、更新也可以用这套