|
su.dbms.sql- SU.DBMS.SQL ------------------------------------------------------------------ From : Andrei Sokolik 2:5022/2.20 30 Jan 2001 15:01:30 To : Vadim Rumyantsev Subject : nulls sort position -------------------------------------------------------------------------------- 29 Jan 01 21:45, Vadim Rumyantsev wrote to Andrei Sokolik: AS>> Hе удержусь :). В Oracle 8i можно писать AS>> SELECT ... AS>> ORDER BY fld [ASC|DESC] [NULLS FIRST|LAST], ... VR> В этом весь Oracle!.. Hу не весь :). Можно, например, написать SELECT ... FROM (SELECT ... FROM ... ORDER BY ...) WHERE ... ... ORDER BY ... чему можно найти нетривиальные применения. В частности, можно использовать ORDER BY в представлениях. Пустячок, а приятно. Опять же аналитические функции (since 8.1.6) вносят дополнительное разнообразие в процесс рутинного написания запросов. VR> В любом другом сервере, поддерживающем VR> сортировку по выражениям, можно написать что-нибудь вроде: VR> order by coalesce(fld, const) ^^^^^^^^ Что это? Если то, о чем я подумал, т.е. что это аналог оракловой NVL(fld,выр), когда NOT NULL значение выдается как есть, а NULL - заменяется на <выр>, то корректно подобрать const в общем случае не просто, а иногда невозможно. И этот "хакерский" прием может приводить к трудноуловимым ошибкам. Или я не о том подумал? Тогда поясни, что имелось в виду. VR> где const -- минимальное или максимальное значение типа typeof(fld), VR> соответственно. Hу, или условное выражение можно честно расписать. Andrei --- GoldED/W32 3.0.1 * Origin: С пивом по жизни. (FidoNet 2:5022/2.20) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /su.dbms.sql/26883a76cc34.html, оценка из 5, голосов 10
|