Hello, Sasha!

sasha wrote:

Оно ведь так хорошо работает в плане сортировки. Не указываю сортировки в селеккте - сортирует по тому выражению что во вьюхе (план хороший строит). Сортирую по другому выражению - выражение сортировки во вьюхе игнорирует ...

план запроса смотрел? точно не 2 раза?

Хотелось бы в целях образования узнать конкретные причины почему сортировка в представлении недопустима? Т.е. не пустой ответ в плане: "не соответствует теории чего-то там" или "так написано в стандарте", которые не проясняют ничего, а что-то типа "в случае таком-то это может привести к такой-то проблеме".

нет, мил человек. Дейт специально не разрешил order by во view,
потому что order by не является реляционной операцией, и выполняется НАД 
РЕЗУЛЬТАТОМ
выборки (множеством записей). А view должно быть идентично таблице, поскольку
view это "симулятор" relation. И если написать

select *
from table, view
where table.field = view.field

то если во view order by, что получится? нафиг он там сдался?

Это то же самое, как order by в подзапросах - бессмыслица
(исключая единственный случай select first 1 ... order by).

И еще - вот делаешь ты select * from table -
записи что, упорядочены? А откуда ты знаешь, что table - это таблица, а не view?

--
Dmitri Kuzmenko, www.ibase.ru, (495) 953-13-34

Ответить