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

一.数据库数据数据

deed_records


sport_records


match_ticket_record


二.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) 
             when d.deed_type=3 then (SELECT u.id from users u INNER JOIN vp_situation v on u.openId=v.vps_vpid WHERE u.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;

三.结果



  • 5
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值