Индексы и снова индексы ...

1. AlexxSys 328 01.08.22 12:12 Сейчас в теме
Коллеги, добрый день.

Коснулся очень интересного вопроса по поводу индексов.
Если вкратце - индексы работают группой, т.е. есть регистр с Измерение1, Измерение2, Ресурс1, Реквизит1, при этом индексированы Измерения 1, 2, Реквизит 1, то 1С создает один индекс из всех полей (Измерения 1 + Измерение 2 + Реквизит 1), т.е. если в запросе будет поиск только по реквизиту 1 - то у нас будет поиск не по индексу, а поиск по таблице - что значительно увеличит время выполнения.

Есть какой то способ, что б индекс вынести в отдельную группу, т.е. что б он работал сам по себе ?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. booksfill 01.08.22 12:19 Сейчас в теме
Свойству реквизит, можно проставить "индексировать", будет создан индекс типа
Реквизит + Измерение1 + [Измерение2 +...]
И, да, в смысле нет, "нормальный" индекс - только по реквизиту создать не получится.
3. AlexxSys 328 01.08.22 12:24 Сейчас в теме
(2)
у реквизит, можно проставить

Все верно, я об этом и написал, но он будет в одной группе, мне же надо создать различные индексы.
В PLSQL проблем нет, это работает созданием индекса отдельной командой. Неужели в 1С никаких способов нет ?

Есть "Индексировать с отдельным упорядочиванием" - по логике подходит, так как создается отдельная группа, но он только на справочниках ...
4. AlexxSys 328 01.08.22 12:57 Сейчас в теме
Ооо, прикольно.
Посмотрел структуру созданных индексов, оказывается для всех реквизитов регистров 1С создает индекс в новой группе с первым элементом - текущего поля + все измерения. Т.е. фактически работает как индексировать с дополнительным упорядочиванием ...
6. booksfill 01.08.22 15:07 Сейчас в теме
(4) Ничего прикольного, а очень даже грустно, но что есть, то есть.
Можно напрямую создать, что надо, но, во-первых, это нарушение лицензионного соглашения, во-вторых, слетит после обновления.
5. user1203706 13 01.08.22 13:27 Сейчас в теме
(1) открываешь mssql ms и лепишь свой индекс какой нужен тебе, хоть покрывающий.
А на индексы, создаваемые самой 1с-иной кладешь болт.
7. user1203706 13 01.08.22 15:38 Сейчас в теме
(6) Слетит только при реструктуризации конкретного объекта ИБ на котором свой индекс повешан, и то, не факт.
И..можно создание своих индексов поместить в триггер какой-нить. Хотя, обычно, их вешают под конкретный план запроса на конкретный объект, ну и не меняют годами этот объект.
8. AlexxSys 328 01.08.22 16:26 Сейчас в теме
Парни, так я ж написал в 4-м сообщении, сто все норм, индексирование в реквизитах работает как индексирование с доп. упорядочиванием и создает отдельную группу.
Т.е. проблем нет.
9. booksfill 01.08.22 16:53 Сейчас в теме
(8) Я не знаю, что такое "отдельная группа", применительно к индексу.

Также не знаю, откуда взялась такая возможность для реквизита сведений, как
"индексировать с доп. упорядочиванием". Я как-то не наблюдал такой опции для регистров.

Можете поделиться скриншотом, где видно что для реквизита регистра сведений включен данный тип индексирования?
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот