互相SQL查询问题 请高手帮帮忙?
互相SQL查询问题 请高手帮帮忙?
有表A:
uid sid
1 2
2 3
2 1
2 6
1 3
1 5
3 1
3 2
现在需要列出:
uid 与 sid 互相对调的数据,请问如何实现?
例如如上数据最终需要的结果为:列出uid=1的所有对调数据
uid sid
1 2
1 3
数据库为mysql5.0的
[解决办法]
这是所谓的“自连接”查询,如下为示例:
mysql> select a.*from a, a as bwhere a.uid = 1 and a.uid = b.sid and a.sid = b.uid;+-----+-----+| uid | sid |+-----+-----+| 1 | 2 || 1 | 3 |+-----+-----+2 rows in setmysql>
[解决办法]
select * from 表A t1 ,表A t2 where t1.uid=t2.sid and t1.sid=t2.uidwand t1.uid=1