Laravel数据库操作之DBfacade

database

一、查询操作

$student=DB::select("select * from user");

// 返回一个二维数组 $student

var_dump($student);

// 以节点树的形式输出结果

dd($student);

构造器

// get()返回多条数据

$student=DB::table("user ")->get();

var_dump($student);

// first()返回1条数据

$student=DB::table("user ")->first(); //结果集第一条记录

$student=DB::table("user ")->orderBy("ID","desc")->first();//按ID倒序排序

var_dump($student);

// where()条件查询

$student=DB::table("user ")->where("ID",">=",2)->get(); //一个条件

$student=DB::table("user ")->whereRaw("ID> ? and age>= ?",[2,10])->get(); //多个条件

dd($student);

// pluck()指定字段,后面不加get

$student=DB::table("user ")->pluck("name");

dd($student);

// lists()指定字段,可以指定某个字段作为下标

$student=DB::table("user ")->lists("name","ID"); //指定ID为下标

dd($student);

$student=DB::table("user ")->lists("name"); //不指定下标,默认下标从0开始

// select()指定某个字段

$student=DB::table("user ")->select("name","ID")->get();

dd($student);

// chunk()每次查n条

$student=DB::table("user ")->chunk(2,function($user){ //每次查2条

var_dump($user);

if(.......) return false; //在满足某个条件下使用return就不会再往下查了

});

# 使用聚合函数

// count()统计记录条数

$nums=DB::table("user ")->count();

echo $nums;

// max()某个字段的最大值,同理min是最小值

$max=DB::table("user ")->max("age");

echo $max;

// avg()某个字段的平均值

$avg=DB::table("user ")->avg("age");

echo $avg;

// sum()某个字段的和

$sum=DB::table("user ")->sum("age");

echo $sum;

二、新增操作

第一个参数是sql语句,第二个参数是一个数组,数组里的元素分别对应sql语句里的问号

$bool=DB::insert("insert into user(name,sex,age) values(?,?,?)",["小明","女",670]);

var_dump($bool);

// 新增成功则返回true。

构造器

$bool=DB::table("user")->insert(["name"=>"小明","sex"=>"女","age"=>20]);

echo $bool; //返回bool值

//如果想得到新增的id,则使用insertGetId方法

$id=DB::table("user")->insertGetId(["name"=>"小明","sex"=>"女","age"=>20]);

echo $id;

//插入多条数据

$bool=DB::table("user")->insert([

["name"=>"小明","sex"=>"女","age"=>20],

["name"=>"小红","sex"=>"男","age"=>21],

]);

echo $bool; //返回bool值

三、更新操作

第一个参数是sql语句,第二个参数是一个数组,数组里的元素分别对应sql语句里的问号

$bool=DB::update("update user set age= ? where ID= ? ",[20,5]);

var_dump($bool);

//更新成功返回true

构造器

$bool=DB::table("user")->where("ID",6)->update(["age"=>30]);

echo $bool;

//自增

$bool=DB::table("user")->where("ID",6)->increment("age");// 年龄加1

$bool=DB::table("user")->where("ID",6)->increment("age",3);// 年龄加3

echo $bool;

//自减

$bool=DB::table("user")->where("ID",6)->decrement("age");// 年龄减1

$bool=DB::table("user")->where("ID",6)->decrement("age",3);// 年龄减3

echo $bool;

//自增时再修改其他字段

$bool=DB::table("user")->where("ID",6)->increment("age",3,["name"=>"小强"]);

四、删除操作

第一个参数是sql语句,第二个参数是一个数组,数组里的元素分别对应sql语句里的问号

$num=DB::delete("delete from user where ID= ?",[5]);

echo $num;

构造器

$num=DB::table("user")->where("ID",6)->delete();// 删除1条

$num=DB::table("user")->where("ID",">",4)->delete();// 删除多条

echo $num; //删除的行数

$num=DB::table("user")->truncate();// 删除整表,不能恢复,谨慎使用

 

以上是 Laravel数据库操作之DBfacade 的全部内容, 来源链接: utcz.com/z/534125.html

回到顶部