日期:2014-05-18  浏览次数:20527 次

求sql语句(谢谢!)
三张表a,b,c  
表a
线路
1
2
3
4

表b
线路     次数
1           41
2           53

表c
线路     次数
1           43
2           32
4           33

合并三张表生成新表
a.线路     b.次数     c.次数
1               41             43
2               53             32
3            
4                               33
语句如何写?在线等,,,,


------解决方案--------------------
Select
A.线路 As 线路,
IsNull(B.次数, 0) As B次数,
IsNull(C.次数, 0) As C次数
From
A
Left Join
B
On A.线路 = B.线路
Left Join
C
On A.线路 = C.线路
------解决方案--------------------
同意樓上的
------解决方案--------------------
--try

select A.线路, [B次数]=B.次数, [C次数]=C.次数
from A
left join
(
select 线路, 次数=sum(次数)
from B
group by 线路
)B on A.线路=B.线路
left join
(
select 线路, 次数=sum(次数)
from C
group by 线路
)C on A.线路=C.线路
------解决方案--------------------
如类型为char,则可改 IsNull(B.次数, 0) As B次数,
为 IsNull(B.次数, ' ') As B次数,
这样0都不显示了
------解决方案--------------------
Select
A.线路 As 线路,
IsNull(B.次数, ' ') As B次数,
IsNull(C.次数, ' ') As C次数
From
A
Left Join
B
On A.线路 = B.线路
Left Join
C
On A.线路 = C.线路