Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Порядок данных без order by :)
|
|||
|---|---|---|---|
|
#18+
Я понимаю что вопрос глупейший но он исходит от наших менеджеров. Ситуация такая что мы тестируем перенос базы с одной платформы на другую. Для этого генерируем некие отчеты которые возвращают данные в разном порядке. Естественно это происходит из-за того что в отчете (запросе) нет сортировки. Так вот вопрос. Что влияет на порядок строк в запросе без сортировки? :) Самое смешное в этой истории то что менеджеры заменеджерили уже request support поддержке Informix-а :) Те попросили выгрузку которую мне не можем им послать потому что там много чего интересного :) Помогите разрешить делему... IDS10 UC3 R1 SDK 2.90 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2008, 20:02 |
|
||
|
Порядок данных без order by :)
|
|||
|---|---|---|---|
|
#18+
Петров Андрей Что влияет на порядок строк в запросе без сортировки? :) Могут влиять разные факторы: - физический порядок строк в таблице(-ах) - размер таблицы (из маленькой таблицы почти гарантированно будет физический порядок строк при скане) - наличие страниц таблицы в буфере (особенно для больших таблиц) - читается таблица по индексу или сканируется - если таблиц несколько, то зависит, естественно, от плана ортимизатора - что он выбирает за основную таблицу (возможно, сканирование), а какие будет дергать только по необходимости (по индексу) - есть ли в запросе группировки и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2008, 20:37 |
|
||
|
Порядок данных без order by :)
|
|||
|---|---|---|---|
|
#18+
Запрос Код: plaintext 1. 2. 3. {+explain} Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Индексы: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2008, 20:53 |
|
||
|
Порядок данных без order by :)
|
|||
|---|---|---|---|
|
#18+
Ну и... Вопрос то теперь в чем ? Я, кажется, ответил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2008, 22:32 |
|
||
|
Порядок данных без order by :)
|
|||
|---|---|---|---|
|
#18+
vasilis и т.п. + фрагментация таблицы, (паралельное или последовательное сканирование фрагментов). 2 Петров Андрей Гарантию сортировки может дать только order by, стандарт SQL так говорит. Вы можете 1000 раз тестировать без order by все будет так, как вам нужно, а на 1001 раз сортировка будет совсем другой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2008, 21:18 |
|
||
|
Порядок данных без order by :)
|
|||
|---|---|---|---|
|
#18+
onstatГарантию сортировки может дать только order by, стандарт SQL так говорит. А нету ссылки на документ чтобы ткнуть лицом менеджера? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2008, 12:26 |
|
||
|
Порядок данных без order by :)
|
|||
|---|---|---|---|
|
#18+
Wiki wiki The ORDER BY clause is used to identify which columns are used to sort the resulting data, and in which order they should be sorted (options are ascending or descending). The order of rows returned by an SQL query is never guaranteed unless an ORDER BY clause is specified. Стандарт 1999 Стандарт 1999-Concepts page 71 A cursor in the open state identifies a table, an ordering of the rows of that table, and a position relative to that ordering. If the <declare cursor> does not contain an <order by clause>, or contains an <order by clause> that does not specify the order of the rows completely, then the rows of the table have an order that is defined only to the extent that the <order by clause> specifies an order and is otherwise implementation-dependent. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2008, 13:02 |
|
||
|
Порядок данных без order by :)
|
|||
|---|---|---|---|
|
#18+
Петров Андрей onstatГарантию сортировки может дать только order by, стандарт SQL так говорит. А нету ссылки на документ чтобы ткнуть лицом менеджера? 92 стандарт где то валялся, сейчас не могу найти, вот что wikipedia говорит wiki The ORDER BY clause is used to identify which columns are used to sort the resulting data, and in which order they should be sorted (options are ascending or descending). The order of rows returned by an SQL query is never guaranteed unless an ORDER BY clause is specified. Думаю ей можно доверять. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.02.2008, 13:12 |
|
||
|
Порядок данных без order by :)
|
|||
|---|---|---|---|
|
#18+
Петров АндрейТак вот вопрос. Что влияет на порядок строк в запросе без сортировки? :) Про стандарты уже выше написали. От себя добавлю, лишь, что в правильно сформулированном вопросе уже содержится ответ. В вашем случае формулировка правильная. Ответ (в общем виде) звучит так: "Все, что угодно!" Ну, а с точки зрения теории: результат запроса - это множество (кортеж). Множество неупорядочено по определению. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.02.2008, 18:42 |
|
||
|
Порядок данных без order by :)
|
|||
|---|---|---|---|
|
#18+
Евгений ФадеевНу, а с точки зрения теории: результат запроса - это множество (кортеж). Множество неупорядочено по определению.вообще-то множество кортежей (представление). И наверно: результат запроса -- множество строк, а результат реляционного выражения -- множество кортежей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2008, 09:48 |
|
||
|
Порядок данных без order by :)
|
|||
|---|---|---|---|
|
#18+
Журавлев Денис Евгений ФадеевНу, а с точки зрения теории: результат запроса - это множество (кортеж). Множество неупорядочено по определению.вообще-то множество кортежей (представление). И наверно: результат запроса -- множество строк, а результат реляционного выражения -- множество кортежей.Ага. Что-то я в конце дня, вчера, был не быстр умом :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2008, 10:49 |
|
||
|
Порядок данных без order by :)
|
|||
|---|---|---|---|
|
#18+
автор в правильно сформулированном вопросе уже содержится ответ. В вашем случае формулировка правильная. Скажем так ответ то я и сам знал :-) Он очевиден но мне хотелось получить линк на документ... Мне просто нужно "доказать" и моего слован е достаточно к сожалению. Тему можно закрыть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.02.2008, 19:52 |
|
||
|
|

start [/forum/topic.php?fid=44&msg=35145557&tid=1608162]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
67ms |
get tp. blocked users: |
1ms |
| others: | 250ms |
| total: | 407ms |

| 0 / 0 |
