博客列表 >5.23 TP5.1数据库查询构造器的使用

5.23 TP5.1数据库查询构造器的使用

李洋
李洋原创
2018年05月24日 13:23:492009浏览

1、数据库的链式查询

实例

  //查询工作大于3000的员工信息,并且只要姓名性别工作,按照工作降序排序,查询出5个员工
        $data = Db::table("staff")
                ->field("name,sex,salary")
                ->where("salary > 3000")
                ->order("salary desc")
                ->limit(5)
                ->select();
        dump($data);

//查询工作大于3000的员工信息,并且只要姓名性别工作,按照工作降序排序,查询出5个员工
        //表达式的其他写法
        $data = Db::table("staff")
            ->field(["name"=>"姓名","sex"=>"性别","salary"=>"工资"]) //相当于AS的用法 起别名
            ->where("salary",">",3000)
            ->order("salary","desc")
            ->limit(5)
            ->select();
        dump($data);

运行实例 »

点击 "运行实例" 按钮查看在线实例

2、数据库的单条插入操作,并且使用data()打包

实例

//数据库的单条插入, 并且使用data()打包,因为insert()是终极方法不建议把参数直接写到方法里面

        $data = [
            "name"=>"李洋",
            "sex" => 0,
            "age" => 23,
            "salary" =>1000
        ];
        $num = Db::table("staff")
            ->data($data)
            ->insert();
        dump($num);

运行实例 »

点击 "运行实例" 按钮查看在线实例

3、数据库的多条插入操作

实例

//数据库的多条条插入, 并且使用data()打包,因为insert()是终极方法不建议把参数直接写到方法里面

        $data = [
            ["name"=>"小红","sex" => 0,"age" => 23,"salary" =>1000],
            ["name"=>"小米","sex" => 1,"age" => 24,"salary" =>2000],
            ["name"=>"小明","sex" => 0,"age" => 25,"salary" =>3000],
        ];
        $num = Db::table("staff")
            ->data($data)
            ->insertAll();
        dump($num);

运行实例 »

点击 "运行实例" 按钮查看在线实例

4、更新操作update()

    

实例

 //将工资小于3000的人员的工资各加1000
        $data = Db::table("staff")
                ->where("salary","<",3000)
                ->data(["salary"=>Db::raw("salary+1000")])  //salary字段加1000
                ->update();
        dump($data);

运行实例 »

点击 "运行实例" 按钮查看在线实例

5、获取插入数据后的自增主键

实例

      //获取插入后的自增主键
        $data = [
            "name"=>"李超杰",
            "sex" => 0,
            "age" => 23,
            "salary" =>1000
        ];
        // insertGetId() 此方法不支持data()打包,所以需写入方法里面
        $id = Db::table("staff")->insertGetId($data);  
       dump($id);

运行实例 »

点击 "运行实例" 按钮查看在线实例

6、删除数据

    

实例

    //删除
        $data = Db::table("staff")
                ->where("id",39) //也可以传入数组批量删除
                ->delete();
        dump($data);

运行实例 »

点击 "运行实例" 按钮查看在线实例


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议