sql实现同一张表连接查询(自连接)
SQL同一张表连接查询(自连接)
由于查询时需要连接两次,查询出不一样的数据,所以需要在同一张表查询,也就是同一张表连接同一张表查询。
查询出一张表的数据被拉黑的名单
这里的拉黑方与被拉黑方存的是同一张表
所以要查询出拉黑方与被拉黑方需要自连接,即一张表连接两次
select a.uid,b.user, a.to_uid,c.user from black a
left join user b
on a.uid=b.id
left join (select id,user,type,sex from user) c
on a.to_uid=c.id
where (b.type=2 or c.type=2)
ORDER BY a.uid desc
以上是同一张表连接两次的sql实现操作。