有A表、B表、C表
A表:
JobNo
JobType
JobName
B表:
JobNo
JobStepNo
JobStepName
C表:
JobNo
ProdName
ProdTime
三个表进行联表查询 希望返回 表格样式的结果集 并包括各个表里的所有字段
A表:
JobNo
JobType
JobName
B表:
JobNo
JobStepNo
JobStepName
C表:
JobNo
ProdName
ProdTime
三个表进行联表查询 希望返回 表格样式的结果集 并包括各个表里的所有字段
解决方案 »
- IMP-00041 Warning: object created with compilation warnings
- oracle日志文件问题,望各位大侠速来指点,小弟感激不尽。
- 数据库老数据varchar类型,存了2种格式现在要进行查询有问题
- 咨询一个关于sequence的格式问题!
- PL/SQL左侧浏览器没有了
- 求sql语句(在线等)
- 创建ORACLE数据库的问题
- 为什么我进不去Enterprise Manager Console?怎么也进不去
- 求救,高手快来看,在线等,急!!!
- 在Oracle9i中如何在新创建的表中录入数据;
- Oracle中的月份连续判断,我的分有限哈!谢谢了!
- 请教SQL文。
FROM A,B,C
WHERE A.JOBNO=B.JOBNO AND A.JOBNO=C.JOBNO
单纯表关联很简单的
select a.*,b.*,c.*
from a,b,c
where a.jobno=b.jobno
and a.jobno=c.jobno
join b on (a.jobno = b.jobno) join c on (a.jobno = c.jobno);
full join
select * from b
full join
select * from c
SELECT
A.JobNo
A.JobType
A.JobName
B.JobStepNo
B.JobStepName
C.ProdName
C.ProdTime
FROM
A,
B,
C
WHERE
A.JOBNO=B.JOBNO
AND A.JOBNO=C.JOBNO
eg:
SELECT a.JobNo,
a.JobType ,
a.JobName,
b.JobStepNo ,
b.JobStepName ,
c.ProdName ,
c.ProdTime ,
FROM a RIGHT JOIN b ON a.JobNo=b.JobNo RIGHT JOIN c ON a.JobNo=c.JobNo
FROM a
FULL JOIN b ON a.Jobno = b.Jobno
FULL JOIN c ON a.Jobno = c.Jobno or b.jobno = c.jobno如果想把jobno合并下可以用SELECT CASE
WHEN a.Jobno IS NOT NULL THEN
a.Jobno
WHEN b.Jobno IS NOT NULL THEN
b.Jobno
ELSE
c.Jobno
END AS jobno
FROM a
FULL JOIN b ON a.Jobno = b.Jobno
FULL JOIN c ON a.Jobno = c.Jobno or b.jobno = c.jobno