|
Определить лишние временные таблицы в запросе, не идущие в последнюю выборку | ☑ | ||
---|---|---|---|---|
0
NikP123
06.06.20
✎
15:29
|
Есть отчет на СКД с огромным запросом на 220 таблиц... На основании него был сделан еще один, в котором половина полей была убрана, запрос я не трогаю, чтобы не нарушать целосность, вдруг чего-то слетит. Но отчет формируется очень долго.., надо оптимизировать. Решил поудалять вероятно образовавшиеся "лишние" временные таблицы в запросе (после отказа от многих полей в настройках).
НО запрос на 220 таблицы, поэтому вручную искать откуда тянется и где начинается каждое поле и каждая таблица муторно... Нет ли какого-то способа сделать это быстро в полуавтоматическом режиме? |
|||
1
Kassern
06.06.20
✎
15:39
|
Я думаю врятли найдется способ это дело автоматизировать. В последнем запросе, какие таблицы вы не используете и найдите где эти таблицы формируются. Если нигде больше в тексте запроса после создания временной таблицы, она не используется, то ее скорее всего можно удалить.
|
|||
2
vde69
06.06.20
✎
15:42
|
выкинь бяку и напиши нормальный где будет не 220 а 22 таблицы
|
|||
3
NikP123
06.06.20
✎
15:43
|
(2) такое не предлагать)
|
|||
4
NikP123
06.06.20
✎
15:43
|
(2) отчет готов и можно считать принят, надо всего лишь оптимизировать
|
|||
5
vde69
06.06.20
✎
16:03
|
кстати посмотри сколько он в темб-дб добавляет, а то вдруг выяснится, что мега сервер заказчика не выдержит несколько паралельных запросов...
а вообще 220 таблиц в запросе - это по любому не правильно |
|||
6
kumena
06.06.20
✎
16:10
|
Так в СКД платформа сама убирает не используемые таблицы и запросы, для полей, которые не выводятся.
Ловите запрос, тот который реально выполняется из макета. |
|||
7
kumena
06.06.20
✎
16:12
|
Я даже больше скажу, эта слишком умная компоновка, иногда то что надо не выводит, и приходится "как бы не нужные" (с её точки зрения) поля обязательными полями делать.
|
|||
8
kumena
06.06.20
✎
16:23
|
Кстати, я тоже как-то боролся за производительность в СКД на длинном запросе, сколько временных таблиц там было не знаю, думаю что 100 точно было.
Тот же самый запрос (реальный, из макета) в обычной консоли выполнялся раз в 6-8 быстрее. Ничего не помогало, в итоге просто выполнял запрос без СКД и выгружал результат в источник. Было это на ЗУП 2.5 и 8.2 и довольно давно. |
|||
9
ДенисЧ
06.06.20
✎
16:31
|
(2) "нормальный" запрос из 22х таблиц? О_о
|
|||
10
ДенисЧ
06.06.20
✎
16:31
|
(0) продам два символа... / и /
Они помогут |
|||
11
experimentator76
06.06.20
✎
17:02
|
(0) в Выбранных полях оставь только те что по-твоему используют юзеры в отчете.
СКД сама отключит соединения с таблицами из которых берутся невыбранные поля. но скорее всего это просто говняный тормозной запрос, который надо смотреть глазами и оптимизировать в комплексе. можно пару дней на оптимизацию убить. на форуме без доступа к запросу и конфе этого не сделать |
|||
12
experimentator76
06.06.20
✎
17:05
|
(0) еще у 1с был замечательный курс по глубокому изучению запросов.
сейчас не знаю есть ли. но если есть каждому одинэснику советовал бы пройти даже удаленно |
|||
13
Ненавижу 1С
гуру
06.06.20
✎
17:08
|
Когда 1с впилит хранимые процедуры, выдающие табличные данные?
|
|||
14
Надо работать
06.06.20
✎
17:44
|
(11) + а после этого погони через консоль компоновки в Инструментах разработчика - получишь оптимизированный запрос
|
|||
15
NikP123
06.06.20
✎
19:31
|
(6) Он только поля из запросов убирает, таблицы и соединения не трогает
|
|||
16
experimentator76
06.06.20
✎
19:54
|
(15) {} вокруг соединений поставь, т.е.
{... соединение ... по ...} |
|||
17
Ненавижу 1С
гуру
06.06.20
✎
19:56
|
(15) только привести это может к иным результатам чем задумывалось
|
|||
18
experimentator76
06.06.20
✎
19:57
|
(15) временные таблицы СКД-оптимизатор по-моему не трогает - возможно их надо перенести в тело
главного запроса - тогда оптимизатор должен заработать |
|||
19
experimentator76
06.06.20
✎
19:58
|
(17) понятно что надо от запроса и данных отталкиваться, но их здесь нет
|
|||
20
Конструктор1С
06.06.20
✎
20:57
|
Возможно дело не в количестве таблиц, а в кривых условиях отборов/соединений
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |