Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Соединить реквизиты из двух справочников

Соединить реквизиты из двух справочников
Я
   dubolom
 
21.07.21 - 16:19
Есть два справочника, условно говоря, первый:
Иванов 3
Васильев 8
Петрова 8

Второй:
Иванов Красный
Васильев Синий
Васильев Жёлтый

Требуется получить все возможные сочетания чисел и цветов для каждой фамилии, в данном случае:

Иванов 3 Красный
Васильев 8 Синий
Васильев 8 Жёлтый

Не подскажете, как это реализовать? Всю голову уже сломал.
   ДенисЧ
 
1 - 21.07.21 - 16:21
выбрать спр1.поле1, спр1.Поле2, спр2.поле2
из справочник.СПравочник1 как спр1
левое соединение Справочник.Справочник как спр2
по спр1.Поле1 = спр2.поле1
   ДядяМитяй
 
2 - 21.07.21 - 16:24
(1) Этак у тебя Петрова туда попадет. А Петрову ТС не любит. Скорее Внутренне соединение.
   ДенисЧ
 
3 - 21.07.21 - 16:26
(2) гед спр1.Поле <> Петрова.
   ДядяМитяй
 
4 - 21.07.21 - 16:26
В примере ненакрашеная Петрова не достойна быть в результате запроса
   Жан Пердежон
 
5 - 21.07.21 - 16:31
(0) звучит как вопрос собеседования для джуна с нулевым опытом (проверить, что хоть что-то знает)
   Said_We
 
6 - 21.07.21 - 16:32
(5) Неа - это как раз троллинг.
Он только сегодня на подобные вопросы и сложнее сам отвечал в ветках.

(0) Так зачем активизировать активность на форуме?
   ДядяМитяй
 
7 - 21.07.21 - 16:32
(5) если на собеседовании так мутно сформулируют задание - уходить без комментариев
   Said_We
 
8 - 21.07.21 - 16:35
(1) Можно без соединения.
Примерно как тут:
Запрос по характеристикам
   Said_We
 
9 - 21.07.21 - 16:38
(8) Не... тут полное соединение - бывают повторения у таблиц:
...
Васильев Синий
Васильев Жёлтый
...
   ДядяМитяй
 
10 - 21.07.21 - 16:41
А если бы это был заказчик - я бы заставил его не только написать на бумаге что делать с Петровой - но и что делать с зеленым Козодоевым без нумера. Самому догадываться - это обязательно кончится "но это же очевидно - с номером не надо, а с цветом надо".
И КРОВЬЮ расписаться
   Smallrat
 
11 - 21.07.21 - 16:53
(0)
ВЫБРАТЬ "Иванов" КАК Фамилия, 3 КАК Число ПОМЕСТИТЬ Спр1 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "Васильев", 8 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "Петрова", 8
;
ВЫБРАТЬ "Иванов" КАК Фамилия, "Красный" КАК Цвет ПОМЕСТИТЬ Спр2 ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "Васильев", "Синий" ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ "Васильев", "Желтый"
;
ВЫБРАТЬ Спр1.Фамилия ПОМЕСТИТЬ ВТ ИЗ Спр1 КАК Спр1 ВНУТРЕННЕЕ СОЕДИНЕНИЕ Спр2 КАК Спр2 ПО Спр1.Фамилия = Спр2.Фамилия
;
ВЫБРАТЬ РАЗЛИЧНЫЕ ВТ.Фамилия, Спр1.Число, Спр2.Цвет ИЗ ВТ КАК ВТ ЛЕВОЕ СОЕДИНЕНИЕ Спр1 КАК Спр1 ПО ВТ.Фамилия = Спр1.Фамилия ЛЕВОЕ СОЕДИНЕНИЕ Спр2 КАК Спр2 ПО ВТ.Фамилия = Спр2.Фамилия
   Smallrat
 
12 - 21.07.21 - 16:56
+(11) РАЗЛИЧНЫЕ надо в 3ий запрос, а не последний

Список тем форума
 
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Фредерик Брукс-младший
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.