Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / С какой версии Оракла view может содержать order by? / 11 сообщений из 11, страница 1 из 1
09.06.2003, 17:37:51
    #32179842
Violina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
С какой версии Оракла view может содержать order by?
И еще теоретический вопрос, зачем это разрешили? Чтобы ленивым не было нужды указывать order by при запросе вьюшки?
...
Рейтинг: 0 / 0
10.06.2003, 10:18:13
    #32180224
Gluk (Kazan)
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
С какой версии Оракла view может содержать order by?
Как щас помню в 8.0.6 было нельзя, а в 8.1.7 уже можно. Напоролся когда переносил программку с 8.1.7 на 8.0.6 (ручками конечно). Зачем было надо сейчас уже не помню, но зачем-то же было надо !

И вообще "Если звезды зажигают ..."
...
Рейтинг: 0 / 0
10.06.2003, 10:26:57
    #32180237
Violina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
С какой версии Оракла view может содержать order by?
Понятно, значение с появлением 8i.

"Если звезды зажигают ..." объяснение конечно допустимое но в этом случае мало приемлемое:-) Нутром чую, что введение order by во вьюхах преследовало более глубинные цели.

Интересно, а что если на вью например с конструкцией order by name делается запрос с order by name desc, hire_date. Ведь тогда действие начального order by нужно анулировать.
...
Рейтинг: 0 / 0
10.06.2003, 10:27:59
    #32180240
Violina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
С какой версии Оракла view может содержать order by?
Понятно, значение с появлением 8i.

ой то есть

Понятно, значит с появлением 8i.
...
Рейтинг: 0 / 0
10.06.2003, 12:18:38
    #32180378
Gluk (Kazan)
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
С какой версии Оракла view может содержать order by?
Я тоже задавался этим вопросом, но в тот раз мне это было зачем-то нужно.
Возможно я был не прав, проект писался быстро, некогда было разбираться.
Я думаю ничего хорошего из переопределения сортировки не получится, но сам не пробовал.
...
Рейтинг: 0 / 0
10.06.2003, 12:26:13
    #32180392
softy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
С какой версии Оракла view может содержать order by?
to Violina:

Если твой вопрос задан относительно экзамена 1Z0-001, то при ответе на вопросы по вью с ORDER BY нужно исходить из того, что нельзя использовать.
...
Рейтинг: 0 / 0
10.06.2003, 12:44:55
    #32180420
Violina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
С какой версии Оракла view может содержать order by?
to softbuilder

спасибо, учту!

Но был еще и теоретический интерес. А можно как нибудь узнать результирующий запрос который получился при совмещении запроса пользователя на вью в запросом на котором вью основывается?
...
Рейтинг: 0 / 0
11.06.2003, 12:44:06
    #32181212
Gluk (Kazan)
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
С какой версии Оракла view может содержать order by?
2Violina

select * from (select * from Tab1 order by Field1) order by Field2

и даже так:

select * from (select * from Tab1 order by Field1) order by Field1 desc

работает !!!
...
Рейтинг: 0 / 0
11.06.2003, 12:53:38
    #32181233
Violina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
С какой версии Оракла view может содержать order by?
to Gluk

А при запросе на вью результирующий запрос всегда строится таким образом?

select ... from (select для вью) ...

или происходит более глубинная оптимизация?

Например есть вью

Код: plaintext
1.
create view V1 as
select * from emp where dept_id =  41 ;


при запросе

Код: plaintext
select * from V1 where salary >  1000 ;


окончательный запрос

Код: plaintext
select * from emp where dept_id =  41  and salary >  1000 ;


вместо

Код: plaintext
select * from (select * from emp where dept_id =  41 ) where salary >  1000 ;
...
Рейтинг: 0 / 0
11.06.2003, 14:02:31
    #32181325
Gluk (Kazan)
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
С какой версии Оракла view может содержать order by?
View - это разобранный select. Я думаю, что глубинная оптимизация происходит уже при обращении к этому view (если происходит вообще).
...
Рейтинг: 0 / 0
11.06.2003, 14:05:50
    #32181332
Gluk (Kazan)
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
С какой версии Оракла view может содержать order by?
Кстати сортировки в приведенных запросах отрабатывают правильно (если явно не противоречат друг другу). Т.е.

order by F1 ... order by F2 ~ order by F1,F2

но

order by F1 ... order by F1 desc ~ order by F1 desc

Все страньше и страньше :) Оптимизатор оказывается СОВСЕМ не простая штука.
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / С какой версии Оракла view может содержать order by? / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]