thinkphp5的聚合查询,子查询,链式查询

   聚合查询
         $length = Db::name('user')->count();   // 查询数据又多少条
         $length = Db::name('user')->count('id');  // 查询数据中有id的个数。如果是null,则不计数
         $count = Db::name('user')->max('price');
         $count = Db::name('user')->min('price');
         $count = Db::name('user')->avg('price');
         $count = Db::name('user')->sum('price');

子查询
		 $result = Db::name('user')->fetchSql()->select();   // 默认是true,只返回查询sql,不返回结果
         $result = Db::name('user')->fetchSql(true)->select();   // 同上
         $result = Db::name('user')->fetchSql(false)->select();   // 返回结果集
         $result = Db::name('user')->buildSql(true);     // 返回(sql语句)
         $result = Db::name('user')->field('id')->where('username','111')->buildSql(true);
         $tempArr =[];
         $res = Db::name('list')->where('id','exp',  "in $result" )->select(); 

链式查询
		 $result = Db::name('user')->where([
             "username" => "111",
             "id"       => "10"
         ])->select();

         $result = Db::name('user')->field('username,password')->select();
         $result = Db::name('user')->field(['username','password'])->select();
         $result = Db::name('user')->field(true)->select();   // 显示所有字段
         $result = Db::name('user')->field(['username'],true)->select();   // 屏蔽输出username,insert在增加字段的时候会有一些验证
         $data = Db::name('user')->limit(3)->select();   // 查询三条
         $data = Db::name('user')->limit(4,3)->select();  // 从第五条开始查询三条
         $data = Db::name('user')->page(2,3)->select();   // 封装的limit,不需要计算,第一个参数事第几页,第二个参数事几条
         $data = Db::name('user')->order('id','desc')->select();   // 倒序输出,使用数组对多个排序,比如有相同的按照另外一个排序
         $data = Db::name('user')->group('sex')->select();
         $data = Db::name('user')->group('sex,username')->select();
         $data = Db::name('user')->group('sex')->having('sum(money)>100000')->select();   // 分组加筛选
没有账号? 忘记密码?

社交账号快速登录