yii2 两表联查 使用附表的条件

$extend['joinWith'] = [
                'order' => function ($q) {
                    return $q->select(['SN', 'STATUS', 'DELIVERY_STATUS', 'PERIOD_AT']);
                }
            ];
            $periodLimit = $currentPeriod-$frontDecListDayLimit;
            $deliveryStatusLimit = implode(',', self::filterOrderDeliveryStatus());
            $where .= " AND ((AR_DEC_ORDER.PERIOD_NUM>({$periodLimit})) OR ((AR_ORDER.STATUS >= 1) AND (AR_ORDER.DELIVERY_STATUS IN ({$deliveryStatusLimit}))))";
SELECT "AR_DEC_ORDER"."ID", "AR_DEC_ORDER"."DEC_SN", "AR_DEC_ORDER"."ORDER_SN", "AR_DEC_ORDER"."USER_ID", "AR_DEC_ORDER"."TO_USER_ID", "AR_DEC_ORDER"."TYPE", "AR_DEC_ORDER"."IS_UPGRADE", "AR_DEC_ORDER"."IS_ADMIN", "AR_DEC_ORDER"."DEC_AMOUNT", "AR_DEC_ORDER"."DEC_PV", "AR_DEC_ORDER"."PAID_WALLET", "AR_DEC_ORDER"."PERIOD_NUM", "AR_DEC_ORDER"."IS_DEL", "AR_DEC_ORDER"."IS_TAKE_EFFECT", "AR_DEC_ORDER"."P_CALC_MONTH", "AR_DEC_ORDER"."CREATED_AT", "AR_DEC_ORDER"."TAKE_EFFECT_AT", "AR_DEC_ORDER"."NORMAL_GOODS_AMOUNT", "AR_DEC_ORDER"."SPECIAL_GOODS_AMOUNT", "AR_DEC_ORDER"."AUX_GOODS_AMOUNT", "AR_DEC_ORDER"."TURN_OVER_DEC_PV", "AR_DEC_ORDER"."CALC_MONTH", "AR_DEC_ORDER"."DATA_FLOW_TO_USER_NAME", "AR_DEC_ORDER"."DELETED_AT", "AR_DEC_ORDER"."IS_BATCH", "AR_DEC_ORDER"."DEC_MAIN", "AR_DEC_ORDER"."DEC_MAIN_LV", "AR_DEC_ORDER"."DEC_MAIN_PROVINCE", "AR_DEC_ORDER"."DEC_MAIN_CITY", "AR_DEC_ORDER"."DEC_MAIN_COUNTY", "AR_DEC_ORDER"."PROM_GIVE_AMOUNT", "AR_DEC_ORDER"."REMARK", "AR_DEC_ORDER"."ALLOW_DELETE", "AR_DEC_ORDER"."DELETE_TYPE", "AR_DEC_ORDER"."OLD_TARGET_REAL_NAME", "AR_DEC_ORDER"."UPDATER", "AR_DEC_ORDER"."UPDATED_AT", "AR_DEC_ORDER"."OLD_REC_USER_NAME", "AR_DEC_ORDER"."OLD_REC_REAL_NAME", "AR_DEC_ORDER"."CHANGE_PERIOD_AT", "AR_DEC_ORDER"."CP_DEDUCT_AMOUNT", "AR_DEC_ORDER"."DATA_AMOUNT", "AR_DEC_ORDER"."REC_USER_NAME", "AR_DEC_ORDER"."REC_REAL_NAME", "AR_DEC_ORDER"."CON_USER_NAME", "AR_DEC_ORDER"."CON_REAL_NAME", "AR_DEC_ORDER"."CHANGE_PERIOD_REMARK", "AR_DEC_ORDER"."DATA_PACKAGE" FROM "AR_DEC_ORDER" LEFT JOIN "AR_ORDER" ON "AR_DEC_ORDER"."ORDER_SN" = "AR_ORDER"."SN" WHERE 1=1  AND (AR_DEC_ORDER.USER_ID='670B84FD7C216D4EE055736AECE8644D' OR AR_DEC_ORDER.TO_USER_ID='670B84FD7C216D4EE055736AECE8644D') AND AR_DEC_ORDER.IS_DEL=0 AND ((AR_DEC_ORDER.PERIOD_NUM>(-41)) OR ((AR_ORDER.STATUS >= 1) AND (AR_ORDER.DELIVERY_STATUS IN (30,52,53)))) ORDER BY "CREATED_AT" DESC

SELECT "AR_DEC_ORDER"."ID", "AR_DEC_ORDER"."DEC_SN", "AR_DEC_ORDER"."ORDER_SN", "AR_DEC_ORDER"."USER_ID", "AR_DEC_ORDER"."TO_USER_ID", "AR_DEC_ORDER"."TYPE", "AR_DEC_ORDER"."IS_UPGRADE", "AR_DEC_ORDER"."IS_ADMIN", "AR_DEC_ORDER"."DEC_AMOUNT", "AR_DEC_ORDER"."DEC_PV", "AR_DEC_ORDER"."PAID_WALLET", "AR_DEC_ORDER"."PERIOD_NUM", "AR_DEC_ORDER"."IS_DEL", "AR_DEC_ORDER"."IS_TAKE_EFFECT", "AR_DEC_ORDER"."P_CALC_MONTH", "AR_DEC_ORDER"."CREATED_AT", "AR_DEC_ORDER"."TAKE_EFFECT_AT", "AR_DEC_ORDER"."NORMAL_GOODS_AMOUNT", "AR_DEC_ORDER"."SPECIAL_GOODS_AMOUNT", "AR_DEC_ORDER"."AUX_GOODS_AMOUNT", "AR_DEC_ORDER"."TURN_OVER_DEC_PV", "AR_DEC_ORDER"."CALC_MONTH", "AR_DEC_ORDER"."DATA_FLOW_TO_USER_NAME", "AR_DEC_ORDER"."DELETED_AT", "AR_DEC_ORDER"."IS_BATCH", "AR_DEC_ORDER"."DEC_MAIN", "AR_DEC_ORDER"."DEC_MAIN_LV", "AR_DEC_ORDER"."DEC_MAIN_PROVINCE", "AR_DEC_ORDER"."DEC_MAIN_CITY", "AR_DEC_ORDER"."DEC_MAIN_COUNTY", "AR_DEC_ORDER"."PROM_GIVE_AMOUNT", "AR_DEC_ORDER"."REMARK", "AR_DEC_ORDER"."ALLOW_DELETE", "AR_DEC_ORDER"."DELETE_TYPE", "AR_DEC_ORDER"."OLD_TARGET_REAL_NAME", "AR_DEC_ORDER"."UPDATER", "AR_DEC_ORDER"."UPDATED_AT", "AR_DEC_ORDER"."OLD_REC_USER_NAME", "AR_DEC_ORDER"."OLD_REC_REAL_NAME", "AR_DEC_ORDER"."CHANGE_PERIOD_AT", "AR_DEC_ORDER"."CP_DEDUCT_AMOUNT", "AR_DEC_ORDER"."DATA_AMOUNT", "AR_DEC_ORDER"."REC_USER_NAME", "AR_DEC_ORDER"."REC_REAL_NAME", "AR_DEC_ORDER"."CON_USER_NAME", "AR_DEC_ORDER"."CON_REAL_NAME", "AR_DEC_ORDER"."CHANGE_PERIOD_REMARK", "AR_DEC_ORDER"."DATA_PACKAGE" FROM "AR_DEC_ORDER" LEFT JOIN "AR_ORDER" ON "AR_DEC_ORDER"."ORDER_SN" = "AR_ORDER"."SN" WHERE 1=1  AND (AR_DEC_ORDER.USER_ID='670B84FD7C216D4EE055736AECE8644D' OR AR_DEC_ORDER.TO_USER_ID='670B84FD7C216D4EE055736AECE8644D') AND AR_DEC_ORDER.IS_DEL=0 AND ((AR_DEC_ORDER.PERIOD_NUM>(-41)) OR ((AR_ORDER.STATUS >= 1) AND (AR_ORDER.DELIVERY_STATUS IN (30,52,53)))) ORDER BY "CREATED_AT" DESC

转载于:https://www.cnblogs.com/arvin-an/p/11175087.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值