求一sql语句 多表联合取实际值。

xjdata 2009-01-11 11:44:21
谢谢大家。 具体内容请看描述。



4表。 A\B\C\D A 主表, B C D 为A表中数值对应的最终结果。 举例 A.a1=2 == B.id=2 B.name = "北京" A.a2=6 == C.id=6 C.name ="汽车"...




A表内容
ID NAME AERA TRANS ... ...
1 某某 1 2
2 张三 3 4
3 李四 2 7
4 王五 9 3
.
.
.
N 国N N


B表内容
ID NAME
1 北京
2 上海
3 无锡
. 大连
. .
N .

C表内容
ID NAME
1 汽车
2 火车
3 飞机
. 火箭
. .
N .



D表内容
ID NAME
1 头等
2 二等
3 三等
. 四等
. .
N .


现求如下结果

序号 人员 地区 交通工具 汉字名
第1号 张三 北京 汽车 .
第2号 李四 北京 火箭 .
第3号 王五 上海 飞机 .
第4号 杨六 天津 火车 .
第N号 国N 广州 火车 .

以下语句必须被使用
select A.id as 序号,A.a2 as 人员,A.AERA as 地区 ,A.TRANS as 交通工具,...A.xxx as 汉字名
...全文
118 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuyq11 2009-01-11
  • 打赏
  • 举报
回复
select * from
(select '第'+cast(A.id as varchar)+'号' As 序号,A.Name as 人员,B.AERA as 地区 ,C.TRANS as 交通工具,...F.xxx as 名 from A aa
inner join B bb on aa.id=bb.id
inner join C bb on aa.id=cc.id
inner join D dd on aa.id=dd.id
....
)as A
xjdata 2009-01-11
  • 打赏
  • 举报
回复
顶,求解。
Fibona 2009-01-11
  • 打赏
  • 举报
回复
select A.id as 序号,A.Name as 人员,B.Name as 地区 ,C.Name as 交通工具,...D.name as 汉字名 from
A join B on A.AERA =b.ID
join C on A.TRANS =C.ID
join D on A.XXx=D.ID
xjdata 2009-01-11
  • 打赏
  • 举报
回复
楼上 还有一个需求没有看仔细。
序号 人员 地区 交通工具 汉字名
第1号 张三 北京 汽车 .
2 李四 北京 火箭 .
第3号 王五 上海 飞机 .
第4号 杨六 天津 火车 .
第N号 国N 广州 火车 .
止戈而立 2009-01-11
  • 打赏
  • 举报
回复
select A.id as 序号,A.a2 as 人员,A.AERA  as 地区 ,A.TRANS as 交通工具,...A.xxx  as 汉字名 From A left join B on A.a1=b.id left join C on A.a2=c.id where A.a1=2 and B.name = "北京" and A.a2=6 and C.name="汽车"... 
downmoon 2009-01-11
  • 打赏
  • 举报
回复

试试联合查询。

select * from 
(select A表.id As 序号,A表.Name as 人员,B表.AERA as 地区 ,C表.TRANS as 交通工具,...F.xxx as 汉字名 from A表 z
inner join B表 y on z.id=y.id
inner join C表 x on z.id=x.id
inner join D表 w on z.id=w.id
--*******
)as A
笺香 2009-01-11
  • 打赏
  • 举报
回复
学习了
lvg 2009-01-11
  • 打赏
  • 举报
回复
mark
wangping_li 2009-01-11
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 wuyq11 的回复:]
select * from
(select '第'+cast(A.id as varchar)+'号' As 序号,A.Name as 人员,B.AERA as 地区 ,C.TRANS as 交通工具,...F.xxx as 名 from A aa
inner join B bb on aa.id=bb.id
inner join C bb on aa.id=cc.id
inner join D dd on aa.id=dd.id
....
)as A
[/Quote]
这个可以,或者直接建成视图来查,那样就简单
crowzwong 2009-01-11
  • 打赏
  • 举报
回复
在查询视图里建个SQL语句不方便点
yagebu1983 2009-01-11
  • 打赏
  • 举报
回复
搞个视图不行吗??

111,130

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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