Мне нужно преобразовать свой запрос в классический синтаксис Oracle, потому что мне нужно поставить его в материализованное представление. Тем не менее, я не совсем уверен, как это сделать:Внешнее соединение в классическом синтаксисе Oracle join
SELECT * FROM transactions t
LEFT JOIN transac_detail td1 ON (t.id = t1.trans_id AND t.ttype = 'VOICE')
LEFT JOIN transac_detail td2 ON (t.id = t2.trans_id AND t.ttype = 'BROADBAND');
Я начал писать так:
SELECT * FROM transactions t, transac_detail td1, transac_detail td2
WHERE t.id = t1.trans_id(+) AND t.id = t2.trans_id(+)
Но как я могу включить «буквенные» условия?
Мне кажется маловероятным, что материализованное представление не примет современную нотацию ISO. Вы уверены, что это необходимо? Это кажется очень неожиданным ограничением - это то, что было бы сделано только в том случае, если Oracle не намерена поддерживать материализованные взгляды в будущем. –