Имя: Пароль:
1C
 
Задвоил строки, если в выборке присутствует адрес электронной почты.
↓ (Волшебник 20.02.2024 10:14)
0 Irkutsk
 
20.02.24
10:10
Если выбираю адреса электронной почты, двоит записи.

Иначе говоря, если закомментировать вот эту строку, то двоить не будет:

    //АнкетаАбитуриентаКонтактнаяИнформация.АдресЭП КАК АдресЭП,    




Код:

https://dpaste.com/HH3QNAMVA


Изображение:
https://radikal.host/i/student.cijGdP


Я неправильно выполнил соединение. И не могу победить. Скажите, пожалуйста, как исправить?
1 Волшебник
 
20.02.24
10:14
Ебанутый программный код
2 d4rkmesa
 
20.02.24
10:18
(0) Плохо:
ЛЕВОЕ СОЕДИНЕНИЕ Документ.АнкетаАбитуриента.КонтактнаяИнформация КАК АнкетаАбитуриентаКонтактнаяИнформация
        ПО (ДвижениеКонтингентаСрезПоследних.Студент.ФизЛицо = АнкетаАбитуриентаКонтактнаяИнформация.Ссылка.ФизЛицо)

Надо добавить что-то вроде:
И АнкетаАбитуриентаКонтактнаяИнформация.Вид =  ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.EMailАбитуриента)

Как минимум. И сейчас еще и история контактной информации может учитываться.
3 Волшебник
 
20.02.24
10:18
(0) Научитесь работать с временными таблицами запросов. Не надо в один запрос делать дохера левых соединений да ещё со СрезПоследних. Это тормозит.
4 Irkutsk
 
20.02.24
10:32
(3) Не тормозит. По факту.
И это разовая потребность, достать такие данные.

Вы мне лучше подскажите, как я так задвоил данные? Где-то у меня тут огромная брешь в понимании процессов.
5 Ёпрст
 
20.02.24
10:46
(4) весь код  в топку.
Написать своими словами, что нужно от этого запроса.
6 d4rkmesa
 
20.02.24
11:02
(4) Кажется, на втором курсе изучают основы SQL и Left Outer Join.
У вас либо два адреса, либо две записи истории изменения этого адреса. Выведите поле Вид из контактной информации. Выведите все поля, в конце концов, и станет все понятно.
7 Волшебник
 
20.02.24
11:40
(5) А я бы ещё поработал со структурой базы
8 Волшебник
 
20.02.24
11:44
(4) Весь код в топку. Всю базу в топку. Всё снести и переписать.
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.