Запросы, планы, оптимизация запросов, ...
Модераторы: kdv, CyberMax
-
Klyk
- Сообщения: 100
- Зарегистрирован: 26 окт 2004, 23:28
Сообщение
Klyk » 27 дек 2005, 05:40
не нашёл никде в документации.
Почему не работает Rows во вложенном запросе типа
select ....
where field = (select....
where....
rows 1
)
з.ы. IB 7.5
или у меня опять предновогодний кризис мыслей....
-
kdv
- Forum Admin
- Сообщения: 6595
- Зарегистрирован: 25 окт 2004, 18:07
Сообщение
kdv » 27 дек 2005, 10:16
потому что и не должен. В FB во вложенных запросах first например работает только с order by, причем сделано это было специально по просьбе, и в общем "в нарушение стандарта".
-
Klyk
- Сообщения: 100
- Зарегистрирован: 26 окт 2004, 23:28
Сообщение
Klyk » 27 дек 2005, 23:38
Именно с order by мне и нужно
А почему это считается "нарушением стандарта"?
почему если не вложеный запрос, то работает...и это стандарт, а если вложеный...то не работает... и это тоже стандарт.
ЗЫ. вопрос я решил на ХП. но всё таки.....
-
kdv
- Forum Admin
- Сообщения: 6595
- Зарегистрирован: 25 окт 2004, 18:07
Сообщение
kdv » 27 дек 2005, 23:48
вложенные запросы и вообще sql - это операции со МНОЖЕСТВАМИ. Сортировка применяется только к КОНЕЧНОМУ РЕЗУЛЬТАТУ, и в реляционной алгебре (подзапросы, join) никаких сортировок нет в принципе. Поэтому во вложенных запросах сортировки не может быть как таковой.
-
Klyk
- Сообщения: 100
- Зарегистрирован: 26 окт 2004, 23:28
Сообщение
Klyk » 28 дек 2005, 04:18
kdv писал(а):вложенные запросы и вообще sql - это операции со МНОЖЕСТВАМИ. Сортировка применяется только к КОНЕЧНОМУ РЕЗУЛЬТАТУ, и в реляционной алгебре (подзапросы, join) никаких сортировок нет в принципе. Поэтому во вложенных запросах сортировки не может быть как таковой.
Хм.... я это не грокк в полной мере...надо будет ещё с этим как-нить толком разобраться.
Спасибо. вопрос снят.