|
От чего зависит порядок в таблице значений?
|
Я
|
|
Галахад 03.12.20 - 13:33 | Иногда, после запроса порядок тот же, иногда другой.
Запрос.УстановитьПараметр("тз1",Таблица);
Запрос.Текст=
"ВЫБРАТЬ
| *
|ПОМЕСТИТЬ Вт1
|ИЗ
| &тз1 КАК тз1
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| Вт1.*
|ИЗ
| Вт1 КАК Вт1
|";
Таблица1 = Запрос.Выполнить().Выгрузить(); |
ДенисЧ 1 - 03.12.20 - 13:35 | Как БГ на душу положит.
Порядок записей в результате запроса без явной сортировки неопределён.
|
RomanYS 2 - 03.12.20 - 13:35 | документально нигде не закреплено, значит может быть любой
|
Малыш Джон 3 - 03.12.20 - 13:35 | Неопределенное поведение.
|
kzot 4 - 03.12.20 - 13:36 | |
H A D G E H O G s 5 - 03.12.20 - 13:37 | ( 4) Как захочет оптимизатор, но почти всегда он захочет прочитать по индексу в порядке, сформированной индексом. |
ДенисЧ 6 - 03.12.20 - 13:37 | ( 4) А по пояс. В смысле - до ширинки. |
kzot 7 - 03.12.20 - 13:39 | ( 6) ну конечно, значит это в другой 1С. |
Mikeware 8 - 03.12.20 - 13:40 | |
ДенисЧ 9 - 03.12.20 - 13:42 | ( 8) Не знаю, как у вас там, а у нас здесь это одинаковое расстояние. |
Галахад 10 - 03.12.20 - 13:42 | И все же какой-то порядок есть.
Потестил.
Одна и та же таблица возвращается одинаково.
Некоторые даже в том же порядке как и до запроса.
|
kzot 11 - 03.12.20 - 13:47 | ( 5) я скорее про |ИНДЕКСИРОВАТЬ ПО |
Малыш Джон 12 - 03.12.20 - 14:02 | (10) >>И все же какой-то порядок есть
и это радует |
runoff_runoff 13 - 03.12.20 - 14:04 | ( 11) и если бы индекс был кластерным.. но 1С пока этого не умеет.. |
H A D G E H O G s 14 - 03.12.20 - 14:06 | |
runoff_runoff 15 - 03.12.20 - 14:18 | ( 14) create clustered index умеет в коде?
или он всегда кластерный.. или первый индекс всегда кластерный? |
H A D G E H O G s 16 - 03.12.20 - 14:40 | ( 15) Да.
В том смысле, как вы так умудряетесь формировать свои вопросы, что их фиг поймешь.
При создании ВТ можно создать только один индекс.
В этом индексе можно указать любой состав полей таблицы.
Все эти поля войдут в этот индекс.
Раньше он был некластерным.
Сейчас он кластерный, либо с платформы 8.3, либо с какогото релиза 8.3.x |
runoff_runoff 17 - 03.12.20 - 14:53 | ( 16) отлично.. хотя бы в запросах..
имелось в виду: ТЗ.Индексы.Добавить("Ссылка, Номенклатура"); тут, я так понимаю, индекс будет некластеррным? |
ДенисЧ 18 - 03.12.20 - 14:59 | В ТЗ кластерный индекс?
Не, я понимаю, что там 50 стран согласовали ненаркоту марьванны... Но тут уже покрепче что-то...
|
H A D G E H O G s 19 - 03.12.20 - 15:00 | Епстественно, речь про ВТ, в которую помещается ТЗ.
В ТЗ индекс конечно не кластерный, порядок строк то не меняется.
|
Answer42 20 - 04.12.20 - 09:06 | ( 15) Всё-таки есть и другие СУБД кроме MsSql.
Например, я слышал сейчас PostgreSql довольно моден стал.
А на этих самых других СУБД (из тех что поддерживает 8ка) кластерных индексов в понимании MsSql нет - так что в платформе их всё-таки нет.
Но для некоторых (скажем 1.5) СУБД кластерные индексы используются как (довольно существенная) оптимизация. |
Ненавижу 1С 21 - 04.12.20 - 09:45 | упорядочивайте данные явно и закройте вопрос
|
ДенисЧ 22 - 04.12.20 - 09:47 | |
Галахад 23 - 04.12.20 - 09:48 | ( 21) На практике вопрос закрыт до его появления тут. Интересна теория. |
Галахад 24 - 04.12.20 - 09:48 | |
Волшебник 25 - 04.12.20 - 09:59 | Упорядочивайте данные явно и не грузите нас
|
Галахад 26 - 04.12.20 - 10:02 | ( 25) Вроде я ветку не апал, народ самостоятельно грузит себя. |