Найти элемент по содержанию табличной части #437555


#0 by VictorXP
Есть справочник Ответы Есть Справочник ВариантыОтветов с табличной частью "Ответы" У табличной части "Ответы" есть реквизит "Ответ" с типом значения СправочникСсылка.Ответы Есть Массив все элементы которого имеют тип СправочникСсылка.Ответы Задача: Найти Элементы справочника ВариантыОтветов в табичных частях которых значения реквизитов "Ответ" полностью соответствуют массиву ссылок, т.е. Содержатся в массиве и не включат значений НЕ содержащихся в массиве. Иными словами - найти элемент по содержанию табличной части Запрос -не является исчерпывающим Поясняю Есть список "1,2,3" то при таком запросе в выборку попадут элементы с тч "1,2" и "2,3" и "1,3,2,4" а надо только "1,2,3" или "3,2,1" или "2,1,3" ... ТАК КАК ПРАВИЛЬНО СОСТАВИТЬ ЗАПРОС?!!
#1 by ТелепатБот
#2 by Bober
#3 by VictorXP
Мне ж надо выбрать не Ответы а ВариантыОтветов - запрос вообще не в тему
#4 by ado
В порядке вечернего бреда -- загнать массив во временную таблицу, сделать внутреннее соединение с табличной частью ответов и проверить количество элементов
#5 by also
Интересная задача
#6 by Bober
ВЫБРАТЬ ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВВ.Ссылка, 0, ВВ.НомерСтроки ИЗ Справочник.ВариантыОтветов.Ответы КАК ВВ ГДЕ ВВ.Ссылка В (Выбрать Вв.Ссылка Из ВыбранныеВарианты)) КАК Варианты Сгруппировать по Варианты.Ссылка ИМЕЮЩИЕ СУММА(ВВ.НомерСтроки) = СУММА(Варианты.НомерСтр)
#7 by anddro
ВЫБРАТЬ    Выборка.Ссылка        2    ИЗ        Справочник.ВариантыОтветов.Ответы КАК ВариантыОтветовОтветы        3    ИЗ        Справочник.ВариантыОтветов.Ответы КАК ВариантыОтветовОтветы
#8 by also
А если в массиве сто элементов?
#9 by also
Ощущение что взлетит
#11 by also
Оператор В позволяет проверить, совпадает ли значение выражения, указанного справа от него, с одним из значений, описанных слева. Если совпадает хотя бы с одним – результатом оператора будет ИСТИНА, иначе – ЛОЖЬ
#12 by VictorXP
Хорошая идея... и как это сделать?
#13 by anddro
В данном случае постановка задачи не подразумевает 100 элементов, иначе смысла нет. Зато просто и быстро.
#14 by VictorXP
Хорошо - в массиве сто элементов... Что тогда?
#15 by anddro
щас, пишу
#16 by Bober
пока пишет проверь
#17 by eklmn
иди учи, в случае входящего ответа, он получит ответ иначе он получит NULL
#18 by eklmn
Есть подозрение что автор сравнивает разные типы данных...
#19 by anddro
где-то так    Справочник.ВариантыОтветов.Ответы КАК ВариантыОтветовОтветы JOIN    ВВ ON ВВ.Ссылка = ВариантыОтветовОтветы.Ссылка ГДЕ НЕ ВариантыОтветовОтветы.Ответ В(&Ответ) //получим первые без вторых ВЫБРАТЬ ВВ.Ссылка ИЗ ВВ  LEFT JOIN ВИскл ON ВВ.Ссылка = ВИскл.Ссылка ГДЕ ВИскл.Ссылка IS NULL
#20 by eklmn
двоечники-извращенцы
#21 by VictorXP
И правильный ответ присуждается: anddro !!! Молодец anddro!
#22 by VictorXP
ПРАВИЛЬНЫЙ ОТВЕТ:
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям