Вход | Регистрация


Внутреннее соединение 2 наборов в СКД

Внутреннее соединение 2 наборов в СКД
Я
   Franchiser
 
20.09.18 - 15:52
Простите как это работает?
Предположительно есть 2 набора (запросы), пользователь устанавливает фильтр на поля второго набора, т.е. СКД должно сделать внутреннее соединение наборов.
Вопрос: чему равно время выполнения? Выполнится полностью запрос набора 1, запрос набора 2, внутреннее соединение.
Или запрос набора 2, запрос набора 1 с учётом внутреннего соединения с набором 2?
 
 
   AlvlSpb
 
1 - 20.09.18 - 16:03
(0) https://helpme1c.ru/sistema-komponovki-dannyx-1s-8-3-dlya-nachinayushhix-urok-7 Смотри в самом конце, где публикуют результаты выполнения, сразу все станет понятным
   Franchiser
 
2 - 21.09.18 - 00:56
(1) ответа там не нашел. Вопрос в следующем: предположим в первом наборе 2 000 000 000 записей, а во втором 100 записей. Насколько оптимально реализовать эту задачу 2 наборами? Будет ли запрос с внутренним соединением работать оптимальнее?
Если же делать запросом, мне нужно, чтобы при одних условиях было внутреннее соединение, при других условиях левое соединение, но это влечет подмену текста запроса в схеме СКД в зависимости от анализа отборов и быстрых отборов.
   Fram
 
4 - 21.09.18 - 01:38
(2) например?
ЛЕВОЕ легко превращается во внутреннее, если наложить условие
   Franchiser
 
5 - 21.09.18 - 01:47
Что быстрее внутреннее соединение в запросе или соединение наборов в СКД с условием на поле второго набора на уровне отчета для случая когда в первом наборе огромное количество записей, а во втором наборе мало записей?
   Лодырь
 
6 - 21.09.18 - 05:20
(5) Второй набор параметризован по значениям первого? Например курс валют из второго по датам из первого?
   Franchiser
 
7 - 21.09.18 - 09:43
Нет,
В первом наборе данные регистра накопления, во втором наборе контрагенты. Пользователь устанавливает фильтр, например, на поле ИНН из набора 2. Связь наборов по коду контрагента.
   Cyberhawk
 
8 - 21.09.18 - 09:46
Давно бы посмотрел уже в ИР результирующий запрос компоновки
   Franchiser
 
9 - 21.09.18 - 09:50
(8) связь наборов влияет на результирующий запрос результата компоновки? Как я понимаю компоновки происходит на сервере приложений. А оптимизированные СКД запросы передаются по отдельности на SQL.
   Franchiser
 
10 - 21.09.18 - 09:55
(8) как увидеть результирующий запрос в ИР? Там же будет 2 отдельных запроса по каждому набору.
 
 Рекламное место пустует
   АнализДанных
 
11 - 21.09.18 - 10:01
(0) Наборы данных всегда соединяются левым соединением, кроме случаев, когда отбор накладывается на поле присутствующее в двух таблицах, в этом случае связь становиться внутренней.
   Cyberhawk
 
12 - 21.09.18 - 10:51
(11) Не должно поле "присутствовать в двух таблицах", достаточно его присутствия в одной. И это касается только если отбор глобальный (на уровне группировки "Отчет").
   Cyberhawk
 
13 - 21.09.18 - 10:51
(10) Кастую TormozIT в ветку
   TormozIT
 
14 - 21.09.18 - 10:55
(10) Одного результирующего запроса не будет. Будут результирующие запросы для каждого набора данных с отбором по параметрам соединения. Они будут выполняться от 1 до многих раз в зависимости от порядка соединения их наборов данных.

Посмотреть все выполненные запросы можно будет только через техножурнал (в ИР включить трассировку запросов).
   Franchiser
 
15 - 21.09.18 - 11:10
(14) если два соединённых наборов без передачи данных во второй набор через параметр, то будет не меньше 2 запросов?
   Franchiser
 
16 - 21.09.18 - 11:14
Вообще у меня цель отфильтровать по ИНН контрагента, полю присутствующем только во втором наборе. Будет ли этот отбор работать быстро, как это работает в если соединять в запросе?

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует