Oracleでは、サブクエリは1レベルの深さの親クエリからの値のみを表示できます。 2つのネストされた選択があるため、内側の選択は外側の選択からの値を見ることができません。
最初に参加を実行できます:
SELECT something, somthingelse, old_price
FROM (SELECT a.something, a.somthingelse, p.quote_price old_price,
row_number() over (PARTITION BY a.part_no
ORDER BY valid_from DESC) rnk
FROM article_table a
LEFT JOIN price_history p ON a.part_no = p.part_no)
WHERE rnk = 1;
最初のquote_price
を返すPL/SQL関数を使用することもできます。 price_history
から article_table.part_no
が与えられたとき 。