Oracle11g 如何将以下查询从informix迁移到oracle,其中查询具有外部
informix中具有外部属性的以下查询:Oracle11g 如何将以下查询从informix迁移到oracle,其中查询具有外部,oracle11g,database-migration,informix,Oracle11g,Database Migration,Informix,informix中具有外部属性的以下查询: SELECT T1.matter,T1.test test,T1.pkg pkg,T1.grade grade, T2.name name ,T4.quarter quarter,SUM(T3.actual) actual, SUM(T5.open) open FROM dimen T1, customer T2, ship T3, timer T4, Outer facture T5, order T6, sales T7 W
SELECT T1.matter,T1.test test,T1.pkg pkg,T1.grade grade,
T2.name name ,T4.quarter quarter,SUM(T3.actual) actual,
SUM(T5.open) open FROM dimen T1, customer T2, ship T3,
timer T4, Outer facture T5, order T6, sales T7
WHERE T3.t_date = T4.day
AND T5.date_lock = T4.day_lock
AND T3.part_lock = T1.part_lock
AND T5.part_lock = T1.part_lock
AND T3.part_lock = T7.part_lock
AND T5.part_lock = T7.part_lock
AND T3.sold_lock= T2.cust_lock
AND T5.sold_lock = T2.cust_lock
AND T3.order_lock=T6.order_lock
AND T5.order_lock=T6.order_lock
AND T5.item LIKE '%AM%'
AND T5.open_qty=' '
AND T1.mtrl_grp IN ('SPT','TEN','PIN','TCS','JEN','SDP','TDP')
AND T3.sales_type in ('ZXR','ZDS','ZUT')
AND T4.day_lock BETWEEN start_lock AND end_lock
Group by T1.matter,T1.test,T1.pkg,T1.grade,T2.name,T4.quarter
有人能建议如何将其转换为oracle吗?这是您将获得的最接近的结果:
SELECT T1.matter, T1.test test, T1.pkg pkg, T1.grade grade,
T2.name name, T4.quarter quarter, SUM(T3.actual) actual,
SUM(T5.open) open
FROM dimen T1
JOIN customer T2 ON T3.sold_lock= T2.cust_lock
JOIN ship T3 ON T3.part_lock = T1.part_lock
JOIN timer T4 ON T3.t_date = T4.day
LEFT OUTER JOIN facture T5
ON T5.date_lock = T4.day_lock
AND T5.part_lock = T1.part_lock
AND T5.sold_lock = T2.cust_lock
JOIN order T6
ON T3.order_lock = T6.order_lock
AND T5.order_lock = T6.order_lock
JOIN sales T7
ON T3.part_lock = T7.part_lock
AND T5.part_lock = T7.part_lock
WHERE T5.item LIKE '%AM%'
AND T5.open_qty = ' '
AND T1.mtrl_grp IN ('SPT', 'TEN', 'PIN', 'TCS', 'JEN', 'SDP', 'TDP')
AND T3.sales_type in ('ZXR', 'ZDS', 'ZUT')
AND T4.day_lock BETWEEN start_lock AND end_lock
GROUP BY T1.matter, T1.test, T1.pkg, T1.grade, T2.name, T4.quarter
从理论上讲,使用此查询得到的结果与使用原始查询得到的结果之间可能存在一些差异。您应该对Informix数据库中的数据尝试这个修改后的查询,以检查它是否按照您希望/预期的方式运行
我并不完全满意T5(外部联接表)中引用列的所有联接条件