sql根据某一字段值的不同关联不同表(二)

一:数据库

deed_records


sport_records


match_ticket_record


vp_situation


user


二:sql语句

SELECT d.integral , CASE WHEN d.deed_type=1 THEN (SELECT s.user_id FROM sport_records s WHERE s.id=d.record_id)
             WHEN d.deed_type=2 THEN (SELECT m.user_id FROM match_ticket_record m  WHERE m.id=d.record_id) END id,
        CASE WHEN d.deed_type=1 THEN '扫码入场'   WHEN d.deed_type=2 THEN '买票'   WHEN d.deed_type=3 THEN '投票' WHEN d.deed_type=4 THEN '注册'   WHEN d.deed_type=5 THEN '购物'  END type 
 FROM deed_records d having id =151
UNION ALL SELECT d.integral, u.id, CASE WHEN d.deed_type=1 THEN '扫码入场'   WHEN d.deed_type=2 THEN '买票'   WHEN d.deed_type=3 THEN '投票' WHEN d.deed_type=4 THEN '注册' WHEN d.deed_type=5 THEN '购物'  END type   from deed_records d INNER JOIN vp_situation v on d.record_id=v.id INNER JOIN users u on u.openId=v.vps_vpid   WHERE u.id=151;

三:结果



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值