sql优化,多次left join同一张表问题?
1
这样一个问题, 比如我的表里面有 订单表,这个表里面含有买家和卖家,我有一个业务要查询他们详细的信息! 这个时候 我的sql 就是这样写
select * from
订单表
left jojn 用户表 on 买家id=用户id
left jojn 用户表 on 卖家id=用户id
这样就对 user表遍历了两次,尤其user表有点大的时候 就很夸张了,不知道这种sql可不可优化!
select * from
订单表
left jojn 用户表 on 买家id=用户id
left jojn 用户表 on 卖家id=用户id
这样就对 user表遍历了两次,尤其user表有点大的时候 就很夸张了,不知道这种sql可不可优化!
没有找到相关结果
重要提示:提问者不能发表回复,可以通过评论与回答者沟通,沟通后可以通过编辑功能完善问题描述,以便后续其他人能够更容易理解问题.
6 个回复
蓝心 2016-07-27 回答
赞同来自: qiuyuluo 、老头子
select xxx
from 订单表
left jojn 用户表 on 买家id =用户id or 卖家id=用户id
这样就可以了,另外用户表上的id列,一定要有索引
aibing - BI初学者 2016-07-27 回答
赞同来自:
悟 - 取是能力,舍是境界 2016-07-27 回答
赞同来自:
老头子 - 专注是唯一的捷径 2016-07-28 回答
赞同来自:
你的卖家/买家ID 是一个字段 还是俩字段 别用中文描述。
ldboyghg - 出入佳境 2016-08-09 回答
赞同来自:
tigerbigcat 2016-08-11 回答
赞同来自: