一、链式查询

1、查询一条记录

  • 对比查询某些字段写法
  1. // 链式查询
  2. public function types(){
  3. $res = DB::select('select username,ispasswd from admin where id=12');
  4. $res2 = DB::table('admin')->where('id',12)->first(['username','ispasswd']);
  5. echo '<pre>';
  6. print_r($res);
  7. print_r($res2);
  8. }

2、查询多条记录

  1. // 查询多条记录
  2. public function lists(){
  3. $res = DB::table('admin')->where('ispasswd',2)->get(['username','real_name']);
  4. echo '<pre>';
  5. print_r($res);
  6. }

  1. // 查询多条记录
  2. public function lists(){
  3. $res = DB::table('admin')->where('ispasswd',2)->get(['username','real_name']);
  4. $data = $res->toArray();
  5. echo '<pre>';
  6. print_r($data);
  7. }

3、查询某一列的当前值

  1. // 查询某一列的当前值
  2. public function val(){
  3. $res = DB::table('admin')->where('id',7)->first(['username']);
  4. $res2 = DB::table('admin')->where('id',7)->value('username');
  5. echo '<pre>';
  6. print_r($res);
  7. echo '<hr>';
  8. print_r($res2);
  9. }

4、获取一列值

  1. $res2 = DB::table('admin')->pluck('username');

二、链式新增

  1. // 链式新增记录
  2. public function inserts2(){
  3. $data = ['username'=>'xiaohu','password'=>'asdfasdfasdfasdf','real_name'=>'胡总'];
  4. $res = DB::table('admin')->insert($data);
  5. // $res2 = DB::table('admin')->insertGetId($data);
  6. var_dump($res);
  7. }

三、链式修改

  1. // 链式更新记录
  2. public function update2(){
  3. $res = DB::table('admin')->where('id',34)->update(['ispasswd'=>2]);
  4. var_dump($res);
  5. }

四、链式删除

  1. // 链式删除记录
  2. public function delete2(){
  3. $res = DB::table('admin')->where('id',34)->delete();
  4. var_dump($res);
  5. }

五、聚合查询

  1. // 聚合查询
  2. public function juhe(){
  3. // gid最大值
  4. $res = DB::table('admin')->max('gid');
  5. // gid最小值
  6. $res2 = DB::table('admin')->min('gid');
  7. // 平均值
  8. $res3 = DB::table('admin')->avg('gid');
  9. // 求和
  10. $res4 = DB::table('admin')->sum('gid');
  11. // 记录总数
  12. $res5 = DB::table('admin')->where('gid',0)->count();
  13. var_dump($res);
  14. echo '<hr>';
  15. var_dump($res2);
  16. echo '<hr>';
  17. var_dump($res3);
  18. echo '<hr>';
  19. var_dump($res4);
  20. echo '<hr>';
  21. var_dump($res5);
  22. }


六、更改字段名

  1. // 更改字段名
  2. public function change(){
  3. // 原生
  4. $res = DB::select('select username as yonghuming from admin');
  5. // 链式
  6. $res2 = DB::table('admin')->select('id','username as yonghuming','real_name')->get();
  7. echo '<pre>';
  8. print_r($res2);
  9. }

七、dump 与 dd 的区别

  • 都是laravel中的打印函数
  • dump打印后继续继续下面的内容,而dd打印当前的内容后,停止后面内容继续。

八、判断条件 where

  1. // where 方法
  2. public function where(){
  3. $res = DB::table('admin')->where('gid','<>',1)->get();
  4. echo '<pre>';
  5. print_r($res);
  6. }
  • 在不损害数据库查询语句情况下,判断条件都是为=的,所以默认只传两个参数
  • 可以多个where条件查询
  • whereBetween
  1. // between
  2. public function between(){
  3. $res = DB::table('admin')->whereBetween('gid',[1,10])->get(['username','gid']);
  4. echo '<pre>';
  5. print_r($res);
  6. }

  • whereIn
  1. // whereIn
  2. public function wherein(){
  3. $res = DB::table('admin')->whereIn('id',[1,18,32])->get(['id','username','real_name']);
  4. echo '<pre>';
  5. print_r($res);
  6. }

  • or查询
  1. // or查询
  2. public function orwhere(){
  3. $res = DB::table('admin')->where('gid',0)->orWhere('ispasswd',1)->get(['gid','ispasswd','username']);
  4. echo '<pre>';
  5. print_r($res);
  6. }

九、toArray()与all()

  • 都是将返回的数据转换成数组
  1. public function orwhere(){
  2. $res = DB::table('admin')->where('gid',0)->orWhere('ispasswd',1)->get(['id','username','real_name']);
  3. echo '<pre>';
  4. print_r($res->toArray());
  5. print_r($res->all());
  6. }

更多相关文章

  1. Android简易实战教程--第三十九话《简单的模糊查询》
  2. sql查询出各科成绩最好的学生信息
  3. 用SQL语句查询数据库中某一字段下相同值的记录方法
  4. 在SQL Server中查询资料库的TABLE数量与名称的sql语句
  5. sql查询表中根据某列排序的任意行语句
  6. 二种sql分页查询语句分享
  7. 查找sqlserver查询死锁源头的方法 sqlserver死锁监控
  8. sql中count或sum为条件的查询示例(sql查询count)
  9. sql 2000 无法执行查询,因为一些文件缺少或未注册"的解决方法

随机推荐

  1. Android中修改系统时间的几种方式
  2. Android之DiskLruCache(缓存工具)
  3. Android客户端向服务器端传值——登录实
  4. android开发随记 - Google Map
  5. windows下Qt5.1 for android开发环境配置
  6. 使用PC端chrome 浏览器远程连接android设
  7. 谁调用了activity的oncreate()方法
  8. [转]Android SDK升级时的错误及解决方法
  9. 告别Dagger2模板代码:DaggerAndroid使用详
  10. Android display架构分析(二)