求一条mysql查询语句

smallclub 2009-04-14 09:34:05
两个表结构如下
network:
id int primary key,
ip varchar(32)
数据
1 192.168.0.1
2 192.168.0.2
3 192.168.0.3

netio:
id int primary key,
netid int foreign key references network(id),
netidto int foreign key references network(id),
数据
1 1 2
2 1 3
3 2 3
查询得到如下数据
netio.id network.id as fid network.id as toid network.ip as fip network.ip as toip
1 1 2 192.168.0.1 192.168.0.2
2 1 3 192.168.0.1 192.168.0.3
3 2 3 192.168.0.1 192.168.0.3
请问各位 如何使用sql语句的到该结果
...全文
62 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
KAKUKYOWU 2009-04-14
  • 打赏
  • 举报
回复

SELECT n.id AS id, n.netid AS fid, n.netidto AS toid, n1.ip AS fip, n2.ip AS toip
FROM netio n
LEFT JOIN network n1 ON (n.netid = n1.id )
LEFT JOIN network n2 ON (n.netidto = n2.id )
zhj92lxs 2009-04-14
  • 打赏
  • 举报
回复
select a.id,a.netid,a.netidto,b.ip as fip, b.ip as toip from netio a
left join network b on a.netid = b.id
left join
(
select aa.id,bb.ip from netio aa
left join network bb on aa.netidto = bb.id
) c on a.id = c.id
Study_Work_2009 2009-04-14
  • 打赏
  • 举报
回复
up

qgmzhfj 2009-04-14
  • 打赏
  • 举报
回复
select * from (select a.*,b.netid,b.netidto from network a,netio b where a.id=b.netid) netw ,(select c.* from network c,netio d where c.id=d.netidto) net where netw.id=net.id;

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧