2017-03-17 10:11:37 9728次浏览 1条回答 3 悬赏 50 金钱
SELECT
	A.*, SUM(B.amount)
FROM
	erp_customer A

LEFT JOIN (
	SELECT
		*
	FROM
		erp_order
	WHERE
		`status` = 1
) B ON A.id = B.customer_id
WHERE
	A.`status` = 1
GROUP BY
	A.id
        $query = Customer::find()->alias("A")->where(['A.status'=>Customer::STATUS_ACTIVE]);
        $query->leftJoin('','A.id = B.customer_id','select * from erp_order as B');
        $query->select(['A.*,sum(B.amount) as amount']);
上面的sql语句 用这种形式怎么写 求解

最佳答案

  • 木奕 发布于 2017-03-17 10:25 举报
    Customer::find()
                ->from(Customer::tableName().' A')
                ->select(['A.*', 'sum(B.amount)'])
                ->leftJoin(erp_order::tableName(). ' B', 'A.id = B.customer_id and B.status = 1')
                ->andWhere(['A.status'=>1])
                ->groupBy('A.id')
                ->asArray()
                ->all()
    
    1 条回复
    回复于 2017-03-17 10:31 回复

    可以了 谢谢

    没有找到数据。
您需要登录后才可以回答。登录 | 立即注册
Oba
CEO

Oba 迪拜

注册时间:2017-02-10
最后登录:2021-03-16
在线时长:898小时30分
  • 粉丝12
  • 金钱5905
  • 威望0
  • 积分14885

热门问题