Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Соединение двух таблиц

Соединение двух таблиц
Я
   kennetmccormick
 
24.09.18 - 15:23
Туплю с элементарным соединением. Есть две таблицы:
первая- Иванов|31.01.2018
        Иванов|28.02.2018

вторая- Иванов|01.01.2018| Коэф1
        Иванов|01.02.2018| Коэф2

нужно получить: Иванов|31.01.2018|Коэф1
                Иванов|28.02.2018|Коэф2

сделал левое соединение по Таб1.дата>=Таб2.Дата
но в итоге выходит три записи:
Иванов|31.01.2018|Коэф1
Иванов|28.02.2018|Коэф1
Иванов|28.02.2018|Коэф2
 
 
   Cool_Profi
 
1 - 24.09.18 - 15:24
ПО КОНЕЦПЕРИОДА(Таб1.Дата, МЕСЯЦ) = КОНЕЦПЕРИОДА(Таб2.Дата, МЕСЯЦ) И Таб1.Человек = Таб2.Человек

Если я правильно понял идею
   kennetmccormick
 
2 - 24.09.18 - 15:48
Неверные параметры "КОНЕЦПЕРИОДА"
И (КОНЕЦПЕРИОДА(<<?>>ТаблСотры.Месяц, МЕСЯЦ) = КОНЕЦПЕРИОДА(ТабКоэф.Период, МЕСЯЦ))

во второй таблице может быть не одна запись по сотру. Задвоит если попадется такое
   kennetmccormick
 
3 - 24.09.18 - 15:49
если по одному сотру будет несколько записей то нужна последняя
   Cool_Profi
 
4 - 24.09.18 - 15:50
(3) выбирай максимум(ТабКоэф.Период)
(2) у меня работает, проверь правильнописание.
   kennetmccormick
 
5 - 24.09.18 - 15:56
(4) и копипастил и в конструкторе запроса делал. подсветку делает норм, но ошибку выдает
   dmt
 
6 - 24.09.18 - 15:58
выбрать Т1.Сотр, Максимум(Т2.Период) КАК МаксДата
поместить МаксДаты
из Т1
левое соединение Т2
по Т1.Сотр = Т2.Сотр
И Т1.Дата <= Т2.Период
сгруппировать по Т1.Сотр
;

выбрать Т1.*, Т2.Коэф
из Т1
левое соединение
(выбрать Т2.* 
из МаксДаты 
левое соединение Т2 по МД.МаксДата = Т2.Период) КАК Т2
по Т1.Сотр = Т2.Сотр
   kennetmccormick
 
7 - 25.09.18 - 09:33
(6) спасибо

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует