"sasha" ...
>
> > Здравый смысл говорит о том, что order by во view просто не имеет смысла
(ни здравого, ни какого другого ;)
>
> Я тебе объясняю.
Спасибо, не нада ;)
> У меня все строковые данные в кодировке None лежат по
> определённым причинам. Есть куча строковых полей в разных таблицах,
> смысл которых хранить названия чего-то. Под эти названия обычно
> отводится 250 или 1000 символов. Названия везде при отображении надо
> сортировать. Для быстрой сортировки я сделал индекс по выражению, но,
> как показала практика писать это громоздкое выражение во-первых не
> удобно, а во вторых часто кто-то ошибался и писал вместо ORDER BY
> CAST(SUBSTRING(UPPER("Name") FROM 1 FOR 50) AS VARCHAR(50)) просто ORDER
> BY "Name" или вобще забывал об ORDER BY.
Это вообше не может считаться причиной ни для чего. Если кто-то
напишет ORDER BY "Id" - это тоже повод насиловать SQL синтакис ?
> Поэтому мне было крайне удобно впихнуть это выражение в запрос
> представления и больше не вспоминать о такой проблеме как неправильная
> или отсутсвующая сортировка. Как по мне это имеет здравый смысл и очень
> удобно.
Это может быть удобно только из-за того, что нет других, нормальных
способов получить желаемое.
> > Более того - он вносит неоднозначность в выполнение запроса над view,
> > если в запросе есть своя сортировка\группировка.
>
> Мне показалось что если в запросе есть своя сортировка по полям
> представления, то сортировка запроса представления игнорируется.
Не всё так просто. Я не влезал в детали реализации именно этого,
но не факт что эту лишнюю сортировку удалось легко определить и выкинуть
> По-моему если это прописать в документации, то всё вполне однозначно.
В документации пиши что хошь (в своей ;). Ты о реализации сначала
подумай (см. выше)
--
Хорсун Влад