# 条件筛选:
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