You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django ORM Raw MySQL关联查询语句逻辑解析及功能咨询

Django ORM Raw MySQL 业务统计语句功能解读

原查询语句

select 
    CONCAT(first_name,last_name)as broker_name,
    coupon_name,
    (select count(user_details.id)from user_details join user on user.id=user_details.user_id and user.role_id=3 where referral_coupon_id=coupons.id) as tenat_referrals,
    (select count(user_details.id) from user_details join user on user.id=user_details.user_id and user.role_id=2 where referral_coupon_id=coupons.id) as landloard_referrals 
from user 
LEFT JOIN coupons on coupons.user_id=user.id 
where role_id=4

功能逻辑说明

这是典型的房产租赁行业经纪人拉新业绩统计语句,具体逻辑如下:

  • 数据筛选范围:从user表取role_id=4的用户,结合别名broker_name可知role_id=4对应角色为经纪人;通过左关联coupons表匹配经纪人名下的所有优惠券,左关联的特性保证即使经纪人没有关联优惠券也会出现在统计结果中,不会遗漏主体数据。
  • 返回字段逐个说明:
    • broker_name:通过MySQL函数CONCAT(first_name,last_name)拼接经纪人的名和姓,生成完整的经纪人展示名称
    • coupon_name:当前行对应经纪人关联的优惠券名称
    • tenat_referrals:子查询统计结果,统计通过当前优惠券邀请注册的租客人数:关联user_details和user表,筛选角色为role_id=3(对应租客)、且注册时绑定的推荐优惠券ID为当前行优惠券ID的用户数(注:原SQL此处字段名tenat为tenant的拼写笔误)
    • landloard_referrals:子查询统计结果,统计通过当前优惠券邀请注册的房东人数:逻辑同上,仅角色筛选条件改为role_id=2(对应房东)(注:原SQL此处字段名landloard为landlord的拼写笔误)
  • 实际业务用途:输出结果每行对应一个经纪人的单张优惠券的拉新转化数据,可直接用于经纪人绩效核算、优惠券引流效果评估、拉新活动效果复盘等场景。

内容的提问来源于stack exchange,提问作者Manish Kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 07:24:03