关于SQL建立视图时的多表查询

贝壳里的海 2010-10-27 10:16:07
我想建立一个视图,这个视图由6个表组成,

其中一个主表,假设是A,其余的分别是B,C,E,D,F,

这五张表中可能不存在A中的记录,

比如一个工程信息存在A表里,但是在B表中因为某些原因还没有该工程的信息,但是我也要这条空记录,


用outer join两个表会,多个表怎么做呢,求解
...全文
244 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
duanzhi1984 2010-10-27
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 liyinweihdu 的回复:]
引用 2 楼 dawugui 的回复:
select a.* , b.* , c.* , d.* , e.* , f.*
from a
left join b on a.id = b.id
left join c on a.id = c.id
left join d on a.id = d.id
left join e on a.id = e.id
left join f on a.……
[/Quote]

那就分组了或DISTINCT 了。

去除重复记录即可。
duanzhi1984 2010-10-27
  • 打赏
  • 举报
回复
left join

select *from a 
left join b on ..
left jon c on ..
.............
dawugui 2010-10-27
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 liyinweihdu 的回复:]
引用 2 楼 dawugui 的回复:
select a.* , b.* , c.* , d.* , e.* , f.*
from a
这样会出现很多重复的记录的[/Quote]
最好给出完整的表结构,测试数据,计算方法和正确结果.


发帖注意事项
http://topic.csdn.net/u/20091130/21/fb718680-98ff-4afb-98d8-cff2f8293ed5.html?24281
贝壳里的海 2010-10-27
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 dawugui 的回复:]
select a.* , b.* , c.* , d.* , e.* , f.*
from a
left join b on a.id = b.id
left join c on a.id = c.id
left join d on a.id = d.id
left join e on a.id = e.id
left join f on a.id = f.id
[/Quote]


这样会出现很多重复的记录的
dawugui 2010-10-27
  • 打赏
  • 举报
回复
select a.* , b.* , c.* , d.* , e.* , f.*
from a
left join b on a.id = b.id
left join c on a.id = c.id
left join d on a.id = d.id
left join e on a.id = e.id
left join f on a.id = f.id
ForFumm 2010-10-27
  • 打赏
  • 举报
回复
full join

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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