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

一、ORM操作需要創(chuàng)建對應(yīng)的model

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

二、有兩種方式使用數(shù)據(jù)操作對象

  • 使用new關(guān)鍵字創(chuàng)建對象后執(zhí)行對象的方法
  • 直接調(diào)用static方法(實(shí)際并發(fā)靜態(tài)方法,而是fascade生成的)

三、常用的數(shù)據(jù)操作

VirtualBourse::find(1)  //查詢單條數(shù)據(jù)
VirtualBourse::all() //查詢所有數(shù)據(jù)
VirtualBourse::pluck('symbol_id') //指定查詢表中的一個字段
VirtualBourse::find(1)->delete() //刪除單條數(shù)據(jù)VirtualBourse::estory(array(1,2,3)) //刪除單條或多條數(shù)據(jù)
VirtualBourse::save() //保存數(shù)據(jù)
VirtualBourse::first() //取第一條數(shù)據(jù)
VirtualBourse::where('name', 'admin')->update(array('name' => 'zoe')); //指定條件,更新數(shù)據(jù)
VirtualBourse::truncate() //清空數(shù)據(jù)表,危險(xiǎn)操作
VirtualBourse::where('name', 'admin')->get(array('id','title')); //指定查詢條件獲取多條數(shù)據(jù)
VirtualBourse::pluck('title'); //返回表中該字段的第一條記錄
VirtualBourse::lists('artist') //返回一列數(shù)據(jù)
VirtualBourse::where('artist', 'Something Corporate')->toSql(); //獲取查詢的sql語句,僅用于條件,不能帶get()之類帶查詢結(jié)果的

條件查詢:
   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'的數(shù)據(jù),默認(rèn)系統(tǒng)無此方法,username為字段名稱

結(jié)果排序:
  使用order關(guān)鍵字:
     Album::where('artist', '=', 'Matt Nathanson')->orderBy('year')->get();   默認(rèn)asc
    orderBy('year', 'desc')

限制結(jié)果數(shù)量
    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();

//查詢?nèi)コ齣d重復(fù)后的數(shù)量
function getUserCount(){
    return $this->distinct('id')->count('id');
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,853評論 18 399
  • 關(guān)于Mongodb的全面總結(jié) MongoDB的內(nèi)部構(gòu)造《MongoDB The Definitive Guide》...
    中v中閱讀 32,321評論 2 89
  • 因?yàn)槁牪欢愕摹皨胝Z”,猜不到你的需求 任由你哭了1個小時(shí)直到疲憊睡去 看著你熟睡的臉龐還掛著兩行淚痕 我的內(nèi)心無...
    亮英堂母嬰服務(wù)閱讀 739評論 0 0
  • 不能。 要賭什么呢?賭和對方之間是否彼此信任?拿信任用作賭注,你又想贏得什么呢? 首先你得想清楚這個問題:信任是什...
    文小刀的刀閱讀 541評論 0 0
  • “媽媽說,抬頭望一下,等看見東京塔頂?shù)臅r(shí)候,你就不會哭啦?!蹦莻€女孩這樣對我說,十多年前的一句話讓我記住到現(xiàn)在。 ...
    胡圖圖_w閱讀 41,182評論 4 13

友情鏈接更多精彩內(nèi)容