求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.线路