Соединение в запросе

  1. 9 г. назад

    Есть запрос, который возвращает уйму строк, в каждой - 12 колонок с ссылками.

    Что-то типа

    ВЫБРАТЬ
    	ВыставлениеСчетов1Работы.Счет1 КАК СчетСсылка1,
    	ВыставлениеСчетов1Работы.Счет2 КАК СчетСсылка2,
    	ВыставлениеСчетов1Работы.Счет3 КАК СчетСсылка3,
    	ВыставлениеСчетов1Работы.Счет4 КАК СчетСсылка4,
    	ВыставлениеСчетов1Работы.Счет5 КАК СчетСсылка5,
    	ВыставлениеСчетов1Работы.Счет6 КАК СчетСсылка6,
    	ВыставлениеСчетов1Работы.Счет7 КАК СчетСсылка7,
    	ВыставлениеСчетов1Работы.Счет8 КАК СчетСсылка8,
    	ВыставлениеСчетов1Работы.Счет9 КАК СчетСсылка9,
    	ВыставлениеСчетов1Работы.Счет10 КАК СчетСсылка10,
    	ВыставлениеСчетов1Работы.Счет11 КАК СчетСсылка11,
    	ВыставлениеСчетов1Работы.Счет12 КАК СчетСсылка12,
    

    К каждой ссылке нужно получить значение свойства, хранящееся в РС ЗначенияСвойствОбъектов.

    Как бы это сделать проще, чем 12 левых соединений с регистром?

  2. а никак, по-моему

  3. ага. 12*3 = 36 соединений в запросе. с одним и тем же регистром, да.

    интересно, что будет быстрее - такой мегазапрос, или маленький запрос в цикле

  4. Естественно один запрос быстрее, чем множество маленьких. Зачем насиловать сервер. А вообще свойства необходимо через СКД подтягивать

    Ответы: (4)
  5. NcSteel А вообще свойства необходимо через СКД подтягивать

    это как?

    у меня в табличной части документа 12 реквизитов с доками. по каждому нужно получить 3 свойства.

  6. + делал раньше запрос в цикле, все работало шустренько до тех пор, пока доков не стало неск тысяч. почти 10тыс запросов к РС со свойствами стало занимать больше 10сек.

  7. СКД позволяет указать связь с характеристикой и вытащить их. Если нужно не для отчета, то рисуй запрос... как сказано выше

  8. Можно сначала во временную таблицу выгрузить список свойств, что-нибудь типа Выбрать * Поместить ВТСвойств из РегистрСведений.ЗначенияСвойствОбъектов Где ЗначенияСвойствОбъектов.Объект в (&СписокСчетов)

    а уже потом строить соединение с этой временной таблицей ВТСвойств, а не самим регистром ЗначенияСвойствОбъектов

    Ответы: (8) (10)
  9. (7) тож думал об этом. но есть ли смысл, все равно этот регистр на 99% забит свойствами этих документов. временная таблица будет содержать практически все записи регистра. и будут те же 36 соединений, но уже с врем таблицей - будет ли ускорение?

    Ответы: (9)
  10. (8) ну зависит от количества свойств в базе. Может автору нужно одно и то же свойство по всем счетам.
    Весь регистр будет иметь количество записей = кол-во объектов*кол. свойств
    а выборка во временную таблицу только количество записей = кол-во объектов.

  11. (7) Разработчик должен выбрать оптимальный способ. Не существует панацей, необходимо пробовать.

или зарегистрируйтесь чтобы ответить!