码迷,mamicode.com
首页 > 其他好文 > 详细

larave -- leftJoin IFNULL 链表查询

时间:2019-09-03 09:42:41      阅读:90      评论:0      收藏:0      [点我收藏+]

标签:关联   raw   select   sel   func   now()   ota   data   ret   

--- 优惠卷主表 和 领取表的关联 目的查询有效优惠卷(还有可领取的数量)

 

$this->query = (new CouponRule())->newQuery();
if ($where) {
$this->query = $this->query->where($where);
}

$fields = array_merge($fields, [
\DB::raw("IFNULL(receive_count, 0) as coupon_log_count")
]);
if ($isInvalid != ‘-1‘ && $isInvalid === ‘0‘) {
// 获取有效优惠卷
$this->query = $this->query
->where(‘coupon_rule.is_invalid‘, 0)
->where(function ($query) {
return $query->where(‘coupon_rule.valid_time_end‘, ‘>‘, Carbon::now())->orWhere(‘coupon_rule.valid_days‘, ‘>‘, 0);
})
->where(‘coupon_rule.total‘, ‘>‘, \DB::raw("IFNULL(ds_d.receive_count, 0)"));
}
$this->query = $this->query->select($fields)
->leftJoin(‘coupon_data as d‘, function ($join) {
$join->on(‘coupon_rule.id‘, ‘=‘, ‘d.coupon_id‘);
});

larave -- leftJoin IFNULL 链表查询

标签:关联   raw   select   sel   func   now()   ota   data   ret   

原文地址:https://www.cnblogs.com/JdsyJ/p/11450965.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!