資料操作(查詢構建器)
# 條件篩選:
where('filed', '>=<', 'value')// 單個條件
where(['filed_1' => 'value', 'filed_2' => 'value'])// 多個條件
orWhere('filed', 'value')
whereBetween('filed', [0, 100])// 區間
whereNotBetween(引數同上)
whereIn('filed', [1,2,3])// 指定集合範圍
whereNotIn(引數同上)
whereNull('filed')// NULL
# 指定欄位:
select('filed_1', "filed_2)// 指定要獲取的欄位,也可以使用 addSelect('filed') 新增要獲取的欄位
# 分組排序:
groupBy('filed')// 按欄位分組
orderBy('field')// 按欄位排序,一個以上可以再加一個 ->orderBy('...')
having('filed', '>=<', 'value')
haveingRow('SUM("price") > 200')
# 連線附加:
join('table_2', 'table1_欄位', '比較條件 >=<', 'table2_欄位')
leftJoin(引數同上...)
join('contacts', function ($join) {
$join->on('users.id', '=', 'contacts.user_id')->orOn(...);
})
union(DB::table('xxx')-> ... );// 附加查詢
distinct()// 排除重複
skip(10)// 跳過
take(20)// 條數
sharedLock()// 共享鎖(可讀不可改)
lockForUpdate()// 避免其它共享鎖修改
# 操作型別 (增刪改查):
get()// 獲取符合條件的所有
insert(['filed' => 'value'])// 插入資料
update(['filed' => 'value'])// 更新資料
delete()// 刪除
truncate()// 清空表
increment('filed', 5)// 自增,第二個引數可省略
decrement('filed',5)// 自減,第二個引數可省略
# 資料返回格式 (預設為物件)
toArray()// 轉為陣列
toJson()// 轉為Json