有五个表:T1(ID,NAME,AVAG1,ACT1)
T2(ID,NAME,AVAG2,ACT2)
T3(ID,NAME,AVAG3,ACT3)
T4(ID,NAME,AVAG4,ACT4)
T5(ID,NAME,AVAG5,ACT5)
我想select 出ID,NAME,AVAG1,ACT1,AVAG2,ACT2,AVAG3,ACT3,AVAG4,ACT4,AVAG5,ACT5
T2(ID,NAME,AVAG2,ACT2)
T3(ID,NAME,AVAG3,ACT3)
T4(ID,NAME,AVAG4,ACT4)
T5(ID,NAME,AVAG5,ACT5)
我想select 出ID,NAME,AVAG1,ACT1,AVAG2,ACT2,AVAG3,ACT3,AVAG4,ACT4,AVAG5,ACT5
解决方案 »
- oracle 不等于空判断无效
- 判断一个记录是否存在
- count(*) 和count(1)的区别
- 请问我在sqldevelop中连接自己数据库问题
- Oracle中有哪个系统表包含有其它各个表的各个字段的类型和长度?
- ORDER BY不能用在exists的句子里面吗??请各位指正一个SQL语句
- 已经安装oracle9i后为什么不能安装developer2k,提示oraclehome已经被用,can not be used as oracle home for nt
- 触发器的问题(急)
- 请问ORACLE有没有ODBC Driver For AIX得呢?
- 怎样写
- 关于oracle10g的exp的问题
- 一不小心删除了Oracle的节点,怎么办,要不要重新安装Oracle,怎么还原?
select
T1.ID,T1.NAME,T1.AVAG1,T1.ACT1,T2.AVAG2,T2.ACT2,T3.AVAG3,T3.ACT3,T4.AVAG4,T4.ACT4,T5.AVAG5,T5.ACT5
where T1.ID = T2.ID
AND T2.ID = T3.ID
AND T3.ID = T4.ID
AND T4.ID = T5.ID
t1.ID,
t1.NAME,
t1.AVAG1,
t1.ACT1,
t2.AVAG2,
t2.ACT2,
t3.AVAG3,
t3.ACT3,
t4.AVAG4,
t4.ACT4,
t5.AVAG5,
t5.ACT5
from T1 t1,T2 t2,T3 t3,T4 t4,T5 t5
where t1.ID = t2.ID
AND t1.ID = t3.ID
AND t1.ID = t4.ID
AND t1.ID = t5.ID;真的是这么简单?
如果数据很多且ID重复的很多会select出大量数据.
这样的话语句没问题,还是表设计的不好,关键字段不能一一对应.
如果能找2个或者3个字段联合起来,保证是唯一的,在select条件里面都写上,也可以避免.