thinkphp+mysql+join+where_thinkphp5.0 多join时where无法between

情况类似于这个链接,这帖子的老哥没有答案,现在遇到一样的问题了,下面贴上代码

$map = ['products.insurance_status'=>1];//是否计算下线的产品

if( input('get.times') && input('get.times') < 7 ){

$time = return_times(input('get.times'));

//此处有bug

$map['order.pay_time'] = ['between time', [strtotime($time['start']),strtotime($time['end'])]];

}

$list = db('xmb_insurance_products')

->alias('products')

->field('products.*,company.company_name,count(order.id) num,sum(order.order_amount) price')

->join('xmb_insurance_company company', 'products.insurance_company_id=company.id', 'left')

->join('xmb_insurance_order order', 'order.insurance_id=products.id and order.order_status=1','left')//此处购买数,如果给了and status=1,则购买数不计入未支付的订单

->group('products.id')

->order('products.id desc')

->where($map)

->paginate(7,false,[ 'type'=> 'page\Page','var_page'=>'page','query' => $this->request->get()]);

结果:

0c95379584f2ab997fd7a60936ab06ba.png

求助:以下语句应该如何处理好

$map['order.pay_time'] = ['between time', [strtotime($time['start']),strtotime($time['end'])]];

问题描述

问题出现的环境背景及自己尝试过哪些方法

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

你期待的结果是什么?实际看到的错误信息又是什么?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值