добрый день.
Сегодня столкнулся с очередным "тихим" косяком в Oracle.
поясню на примере:
есть запрос состоящий из вьюх
например
select
Column1, column2, column3
from View1 v1
join View2 v2 on ...
join View3 v3 on ...
where
Column1 = 2
при этом поле Column1 присутствует в нескольких вьюхах -и по идее оракл должен был бы как все нормальные СУБД - возмутиться такому запросу, что мол непонятно что ты имеешь в виду - но нет он молчаливо проглатывает это и в условии where подставляет какой-то Column1 из х/з какой- вьюхи и запрос срабатывает и возвращает результат.
Тоже самое со столбцом в select - возвращает, хотя должен был бы сругаться.
Вот что это такое за свинство?
Будьте осторожны не наступите в ЭТО.
Конечно можно тут вопить что нужно писать правильно с псевдонимами (что я и делаю) - но СУБД то должна проверять или нет?
больше всего в mssql я люблю cross apply.