Анализ SQL запросов из 1С к СУБД #646903


#0 by mzelensky
Доброго всем! Сейчас встал один спор про оптимизацию запроса, а именно: Если делаем выборку данных  и потом левым соединением цепляем вложенный запрос, например Так вот: 1) Сколько запросов пошлет 1С-ка менеджеру СУБД (в файловом и серверном вариантах) 2) как будет выглядеть SQL запрос (в файловом и серверном вариантах) П.С. + подскажите, где и как можно увидеть/проанализировать эти самые "преобразованные" SQL запросы ?!
#1 by mzelensky
есть какие-нить обработки или еще что-то, где  можно подать на вход 1С-кий запрос, а на выходе получить "преобразованный" SQL-запрос ?!
#2 by Fragster
1) минимум 1 запрос 2) есть куча тулзов, от встроенного в скуль профайлера и до техножурнала и спец инструментов
#3 by Fragster
есть
#4 by el-gamberro
1. 1 запрос 2. Примерно так и будет Насчет запросов в файловом варианте... как бы тебе это сказать...
#5 by sda553
sql профайлер поможет тебе увидеть все что посылает 1с в sql
#6 by mzelensky
Тут понятно что минимум 1. от чего зависит количество? как это заранее предсказать, чтобы более оптимально запрос написать?!
#7 by mzelensky
а если файловый вариант базы?!
#8 by mzelensky
Просто спор встал в следующем: Мол если делать соединение с вложенным запросом. то 1С-ка сперва пошлет СУБД левую таблицу, получит результат. Затем возьмет правую таблицу (вложенный запрос) - пошел его в менеджре СУБД, получит результат. А уж потом будет оперировать этими результатами. Вопрос на сколько это имеет место в действительности!? Т.е. какое действие на какой стороне происходит и в какой последовательности?!
#9 by Fragster
ну, если там есть запрос к таблице остатков - предварительно будет еще запрос к таблице, где хранятся даты рассчитанных итогов.
#10 by H A D G E H O G s
нинасколько.
#11 by Fragster
в скуле тоже есть вложенные запросы, а файловая покрыта мраком
#12 by H A D G E H O G s
SQL все сделает сам. 2 вложенными циклами.
#13 by mzelensky
ок, давай чуть более точечно. Допустим: т3 - таблица "Справочник.ДоговорКонтрагента.ТЧ" - ну т.е. это какая-то табличная часть справочника, которая выбирается во вложенном запросе, затем группируется и этот результат уже соединяется с таблицей Т1. Вот в данном случае сколько будет запросов из 1С к СУБД, какие данные где будут обрабатываться (т.е. все будет обработано в СУБД или часть в СУБД, а часть в 1С).
#14 by Fragster
1
#15 by mzelensky
Где это почитать можно?! Просто сколько людей столько и мнений. Уже много раз подымались подобные темы + общаясь с разными людьми слышу разные (порой совсем разные) сведения.
#16 by H A D G E H O G s
Достаточно подумать логически.
#17 by Fragster
открой профайлер и посмотри - на многое откроются глаза
#18 by mzelensky
а где его там найти?! это в Менеджменте?
#19 by H A D G E H O G s
Ну или запустить Профайлер, посмотреть, как 1С строит 1 запрос к SQL в случае , как 1С строит доп. запросы к таблице метаданных, выбирая значения перечислений, строит временные таблицы при получении ВТ Остатки. "Много неясного в странной стране, Можно запутаться и заблудиться. Даже мурашки ползут по спине, Если представить, что может случиться. Вдруг будет пропасть и нужен прыжок. Струсишь ли сразу? Прыгнешь ли смело? А? э... так-то, дружок, В этом-то все и дело."
#20 by H A D G E H O G s
ms sql profiler - погугли. Это дает 100500 к понимаю 1С.
#21 by H A D G E H O G s
Самое забавное смотреть на партянку разыменования ДокументСсылка.
#22 by mzelensky
вопросы "оптимизации" и попытки осознания логики работы системы порой приводят в ступор...
#23 by mzelensky
ок, спасибо!
#24 by H A D G E H O G s
Система работает очень логично и оптимально.
#25 by mzelensky
она то может и работает, но объяснить "как именно она это делает" никто толком не может.
#26 by Fragster
кто может - тот не задает вопросов, ибо ему все понятно
#27 by Fragster
вот небольшое погружение на хабре
#28 by el-gamberro
то что ты оптимизация в кавычках написал это очень правильно :))) потом что force order и hash join ты никогда в 1ском запросе не напишешь
#29 by МихаилМ
в больше дезинформации, чем информации.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С