我在ORACLE中的JOINS遇到技术和语法问题。
如果我有7张桌子,列在下面:
FROM
QT_QTS.PLA_ORDEM_PRODUCAO pla,
qt_qts.res_tubo_austenitizacao aust,
qt_qts.res_tubo_revenimento1 res_rev1,
qt_qts.res_tubo_revenimento2 res_rev2,
limsprod.SAMPLE sp,
limsprod.test t,
limsprod.result r
我需要获取“ limsprod.result r” 表中的所有数据,并与 qt_qts.res_tubo_austenitizacao aust , qt_qts.res_tubo_revenimento1 res_rev1 和 qt_qts.res_tubo_revenimento2 res_rev2 表。
如何使用Oracle数据库进行此加入?我尝试了左联接,但是没有用。
答案 0 :(得分:1)
不可能回答这个问题。我们只有一些表的清单。我不确定我是否想代替您这样做。
但是,这是一个建议:从一张桌子开始:
select * from limsprod.result r;
它将返回所有行。然后将其加入另一个表:
select *
from limsprod.result r join qt_qts.res_tubo_austenitizacao aust on aust.id = r.id
看看会发生什么-是否得到了所有想要的行?如果没有,您是否应该添加另一个JOIN条件?也许是外部联接?在您进行排序之前,不要移动到第三张桌子。对结果满意后,添加另一个表:
select *
from limsprod.result r join qt_qts.res_tubo_austenitizacao aust on aust.id = r.id
join qt_qts.res_tubo_revenimento1 res_rev1 on res_rev1.idrr = aust.idrr
重复前面所说的话。