Замер производительности для запроса в цикле

1. surinat 21.02.23 15:21 Сейчас в теме

УТ 11.1
Платформа 8.3.18.1959

Сегодня услышала от уважаемого мной программиста, что запросы в цикле нельзя было делать только в 8.0.
Начиная с 8.1 всё быстро работает, можно запросы делать в цикле.
Попробовала простенький тестовый пример.
Запрос до цикла с последующей обработкой в цикле получился гораздо быстрее, чем запрос в цикле.

Может кто слышал что-то об этом? Я обучалась очень давно и тогда говорили, что нельзя (или хотя бы не желательно) выполнять запросы в цикле. Может что изменилось? Может это связано с выполнением на сервере?
По теме из базы знаний
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. nomad_irk 71 21.02.23 15:30 Сейчас в теме
(1)ничего не поменялось, запросы все так же не рекомендуется выполнять в цикле.
Fox-trot; +1 Ответить
3. DBV 21.02.23 15:30 Сейчас в теме
(1) А чем Ваш знакомый это аргументирует?
5. surinat 21.02.23 15:50 Сейчас в теме
(3) Пока ничем. Пока не было возможности спросить. Хотя, говорил, что в типовой бухгалтерии это часто используется в бухгалтерских отчетах. Возможно, имел ввиду, что быстрота увеличилась и погрешность в разнице времени маленькая, поэтому не стоит на это обращать внимание.
7. DBV 21.02.23 16:23 Сейчас в теме
(5) Судя по рекомендации ИТС

1.2. Также в большинстве случаев, следует минимизировать и общее количество запросов к СУБД.

См. также: Многократное выполнение однотипных запросов.

2. С другой стороны, не следует пытаться любой ценой перенести выполнение задачи в СУБД. СУБД обычно оптимизирует и выполняет простые запросы более эффективно, чем сложные.


То есть не надо уходить в крайности, в принципе, как и в большинстве случаев
6. SlavaKron 21.02.23 15:59 Сейчас в теме
(1) Я сторонник того, чтобы из СУБД брать минимальный набор данных, который обрабатывать уже во встроенном языке.
К сожалению, появилось очень много адептов делать всё в запросе. Это однако не исключает того факта, что запрос в цикле – зло и всегда может быть приведен в единый запрос, который будет работать быстрее.
8. lmnlmn 69 21.02.23 16:23 Сейчас в теме
(1) Слишком просто вопрос поставлен. Иногда запрос в цикле позволяет обойтись меньшими выборками данных, зачастую с более читаемым запросом. С пониманием к этому делу надо подходить.
Stref75; Fox-trot; user1880116; Zevzm; +4 Ответить
9. RustamZz 21.02.23 16:35 Сейчас в теме
(1) Запросы в цикле - ЗЛО. Можете больше не уважать этого "программиста". И да пример в студию ваших запросов!
10. user1880116 21.02.23 16:41 Сейчас в теме
(9)
Можете больше не уважать этого "программиста"
А вот когда платформа для получения представлений ссылок динамического списка начинает фигачить множество коротких запросов - это уже повод начать не уважать её или ещё нет?
11. RustamZz 21.02.23 16:43 Сейчас в теме
(10) Не замечал такого. Можете пример подобного динамического списка показать?
12. user1880116 21.02.23 16:45 Сейчас в теме
(11) Любой список. Открываешь SQL профайлер или настраиваешь события, Начинаешь новый сеанс, чтобы кэш представлений пустой был, открываешь список и начинаешь замечать.
14. RustamZz 21.02.23 17:18 Сейчас в теме
(12) Справочник страны мира.
Прикрепленные файлы:
15. Sashares 34 21.02.23 17:37 Сейчас в теме
(14)Посмотрите справочник, у которого есть в модуле менеджера задана процедура для события обработка получения представления.
И чтобы динамическом списке выводилось его представление.
16. RustamZz 21.02.23 17:41 Сейчас в теме
(15) Это не соответствует "любой список". В таком варианте - все печально будет.
4. coollerinc 185 21.02.23 15:49 Сейчас в теме
Ни чего не поменялось, все так же не рекомендуется
13. user1880116 21.02.23 16:48 Сейчас в теме
Или ещё лучше - отчет сформируй, который табличный документ выводит. И покажт пользователю этот отчет.
Оставьте свое сообщение
Вакансии
Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)

Программист 1С
Москва
зарплата от 250 000 руб.
Полный день

Программист 1C
Волгоград
зарплата от 200 000 руб.
Полный день

Аналитик
Санкт-Петербург
зарплата от 200 000 руб. до 250 000 руб.
Полный день