基于ThinkPHP的mysql 连表查询时,子表多条件,怎么查询?

查看:146
本文介绍了基于ThinkPHP的mysql 连表查询时,子表多条件,怎么查询?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

我是这么写的,只得到了累计销售,我还想获得当月销售,同时输出这两个值。

public function agentManage(){

    $m = M("dagent as a");
     $count = $m->count();
     $Page       = new \Think\Page($count,10);
     $show       = $Page->show();// 分页显示输出
     $list = $m->order('id desc')               
             ->field("a.id,a.agent_id,a.recommend_id,a.is_cash,a.status,sum(qp_dagent_sell.sell_num) as all_num")
             ->join("LEFT JOIN qp_dagent_sell ON qp_dagent_sell.agent_id = a.agent_id")
             ->group('qp_dagent_sell.agent_id')
             ->limit($Page->firstRow.','.$Page->listRows)->select();
             // $beginThismonth=mktime(0,0,0,date('m'),1,date('Y'));
             // $list = M("dagent_sell")->
             // ->field(sum(sell_num))
             // ->where("time >='$beginThismonth'");

     $this->assign("list",$list);
     $this->assign('page',$show);// 赋值分页输出
     $this->display();
}

解决方案

复杂的sql语句就直接写sql查吧,一年前就没用tp了,应该有类似findBySql() 的方法,前端的话注意防注入,处理一下就行。不用把模型查询写的这么复杂。

这篇关于基于ThinkPHP的mysql 连表查询时,子表多条件,怎么查询?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆