Имя: Пароль:
1C
1С v8
Соединение в запросе
0 Fannasankh
 
17.06.16
11:50
Имеется две таблицы, в одной есть ИНН и Сумма и в другой есть ИНН и Сумма. Возможно ли соединить по этим двум полям таблицы так, чтобы первая таблица в выборку попала вся, а соответствия из второй брались только один раз? То есть если строка второй таблицы может соединиться с несколькими из первой, то соединяться должна только с одной (первой или ещё какой).
1 Nuobu
 
17.06.16
11:51
(0) Опять номер строки?
2 pessok
 
17.06.16
11:52
а что в результирующей таблице будет? я по полям. Т.к. по постановке вопроса кажется, что соединения совсем не надо, надо только первую таблицу :)
3 pessok
 
17.06.16
11:54
да и вообще, опиши задачу полностью
4 Fannasankh
 
17.06.16
11:58
(2) В результирующей таблице будут ещё другие поля. Суть задачи такая: есть приход денег из банка (выгрузка из клиент банка), и есть некая таблица выставленных счетов с указанием проекта за который выставлен счет. Нужно максимально возможно точно распределить приход денег по проектам. Предполагается ручная постобработка того, что сопоставить не удалось. Соединить по ИНН и номеру счета получается примерно в половине случаев. Есть идея сопоставлять по ИНН и Сумме, но тогда одна платежка подтягивается ко множеству счетов, если их было выставлено несколько одному контрагенту с одной суммой.
5 Fannasankh
 
17.06.16
13:10
ап
6 Nuobu
 
17.06.16
13:11
(5) Номер строки чем не подошел?
7 Fannasankh
 
17.06.16
13:13
(6) Не совсем понял, какой номер строки
8 Очевидно
 
17.06.16
13:27
(7) я так понимаю, что речь идет о том чтобы пронумеровать обе таблицы "Самосоединением" и связать по "Инн" + "Номер строки" ... но для "чёткой" нумерации нехватает какого-то уникального признака (например документа оплаты)... иначе в ситуации когда суммы платежек совпадут - произойдёт задвоение записей ... а так нечто аналогичное парралельно обсуждается здесь :
Можно ли обойтись только языком запросов?
9 Nuobu
 
17.06.16
13:32
(8) дадада. Именно эту тему я имел ввиду в (1) под словом "опять". Уникальной штуки не нужно, т.к. для номера строки используется функция "Количество". Иногда юзают "Количество( Различные", но тут уже автор сам будет решать, что для него лучше.
10 Fannasankh
 
17.06.16
13:34
(9) Кажется понял, сейчас попробую
11 ovrfox
 
17.06.16
13:36
В чем проблема? После того, как строку найдешь - очищай ИНН. Если связь "многие ко многим"- то это лучший выбор. Если "многие к одному" - тогда можно упорядочить первую таблицу и искать только при смене ИНН при проходе по первой таблице.
12 Fannasankh
 
17.06.16
13:36
(11) как я в запросе очищу инн?
13 HardBall
 
17.06.16
13:41
Из первой таблицы сделай ВТ с нарастающим итогом это будет новый ключ а потом соедини со второй.
14 GANR
 
17.06.16
14:59
(0) http://www.sql-tutorial.ru/ru/book_numbering_by_primary_key_values.html - и фильтруешь только первую строчку из присоединяемой таблицы.