2018-08-03laravel Eloquent ORM模型对表的交互

一、ORM操作需要创建对应的model

1.直接在model操作:class User extends Eloquent
2.依赖注入方式:如图
image.png

二、有两种方式使用数据操作对象

  • 使用new关键字创建对象后执行对象的方法
  • 直接调用static方法(实际并发静态方法,而是fascade生成的)

三、常用的数据操作

VirtualBourse::find(1)  //查询单条数据
VirtualBourse::all() //查询所有数据
VirtualBourse::pluck('symbol_id') //指定查询表中的一个字段
VirtualBourse::find(1)->delete() //删除单条数据VirtualBourse::estory(array(1,2,3)) //删除单条或多条数据
VirtualBourse::save() //保存数据
VirtualBourse::first() //取第一条数据
VirtualBourse::where('name', 'admin')->update(array('name' => 'zoe')); //指定条件,更新数据
VirtualBourse::truncate() //清空数据表,危险操作
VirtualBourse::where('name', 'admin')->get(array('id','title')); //指定查询条件获取多条数据
VirtualBourse::pluck('title'); //返回表中该字段的第一条记录
VirtualBourse::lists('artist') //返回一列数据
VirtualBourse::where('artist', 'Something Corporate')->toSql(); //获取查询的sql语句,仅用于条件,不能带get()之类带查询结果的

条件查询:
   1. 最普通的条件查询 User::where('字段名','查询字符','限制条件')     例:Album::where('title', 'LIKE', '...%')
   2. 多条件查询,使用多个where    Album::where('title', 'LIKE', '...%')->where('artist', '=', 'Say Anything')->get();
   3. 或查询操作使用orWhere(),使用方法通where
    4.直接用sql语句写查询条件    Album::whereRaw('artist = ? and title LIKE ?', array('Say Anything', '...%'))
    5. 其他查询方法
       whereIn(),whereBetween(),whereNested()子查询,orWhereNested(),whereNotIn(),whereNull(),whereNotNull()
    6. 快捷方式  whereUsername('king')  查询'username' = 'king'的数据,默认系统无此方法,username为字段名称

结果排序:
  使用order关键字:
     Album::where('artist', '=', 'Matt Nathanson')->orderBy('year')->get();   默认asc
    orderBy('year', 'desc')

限制结果数量
    take()方法
    Album::take(2)->get();                          //select * from `albums` limit 2

指定偏移
    Album::take(2)->skip(2)->get();        //select * from `albums` limit 2 offset 2
whereRaw($where)->skip($limit)->take($pageSize)->get();

//查询去除id重复后的数量
function getUserCount(){
    return $this->distinct('id')->count('id');
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,875评论 18 399
  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 32,101评论 2 89
  • 因为听不懂你的“婴语”,猜不到你的需求 任由你哭了1个小时直到疲惫睡去 看着你熟睡的脸庞还挂着两行泪痕 我的内心无...
    亮英堂母婴服务阅读 695评论 0 0
  • 不能。 要赌什么呢?赌和对方之间是否彼此信任?拿信任用作赌注,你又想赢得什么呢? 首先你得想清楚这个问题:信任是什...
    文小刀的刀阅读 504评论 0 0
  • “妈妈说,抬头望一下,等看见东京塔顶的时候,你就不会哭啦。”那个女孩这样对我说,十多年前的一句话让我记住到现在。 ...
    胡图图_w阅读 41,106评论 4 13