|  | Левое соединение (помогите с запросом) | ☑ | 
    
        | 0
    
        seraf   23.04.20✎ 10:34 | 
        Привет, мне нужно в левом соединении выбирать первую запись.
Написал такое
 
 ВЫБРАТЬ
 Договора.Ссылка КАК ДоговорСсылка,
 Заказы.ДоговорСсылка КАК ДоговорРС
 ИЗ
 Справочник.ДоговораСКлиентами КАК Договора
 ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ ПЕРВЫЕ 1
 ЗаказыНовыеСрезПоследних.Договор КАК ДоговорСсылка
 ИЗ
 РегистрСведений.ЗаказыНовые.СрезПоследних КАК ЗаказыНовыеСрезПоследних
 ГДЕ ЗаказыНовыеСрезПоследних.Договор = &Ссылка) КАК Заказы
 ПО (Договора.Ссылка = Заказы.ДоговорСсылка)
 ГДЕ
 Договора.Ссылка = &Ссылка
 
 это для одной строки, работает, а если убрать условия ГДЕ ЗаказыНовыеСрезПоследних.Договор = &Ссылка и Договора.Ссылка = &Ссылка то не выведет ничего
 как правильно соединиться таким образом?
 |  | 
    
        | 1
    
        seraf   23.04.20✎ 10:37 | 
        Вернее выведет Первые 1 для одной случайной строки, а для всех?     |  | 
    
        | 2
    
        fisher   23.04.20✎ 10:55 | 
        Попробуй 
ГДЕ ЗаказыНовыеСрезПоследних.Договор = &Ссылка
 заменить на
 ГДЕ ЗаказыНовыеСрезПоследних.Договор = Договора.Ссылка
 |  | 
    
        | 3
    
        fisher   23.04.20✎ 10:55 | 
        Коррелирующие подзапросы в 1С можно, но рабочий вариант навскидку могу не сообразить.     |  | 
    
        | 4
    
        seraf   23.04.20✎ 10:56 | 
        (2) я пробовал, но пишет поле не найдено Договор.Ссылка     |  | 
    
        | 5
    
        seraf   23.04.20✎ 10:58 | 
        ну тут вопрос в общем как соединиться с РС, в котором нужна только первая запись из набора
загуглил такое соединение, ток пока не ясно
 |  | 
    
        | 6
    
        fisher   23.04.20✎ 11:01 | 
        (5) Есть стандартный путь в два этапа. Загугли "срез последних на каждую дату". Принцип поймешь.
Но можно и коррелирующим подзапросом. Это изящнее и можно выбирать не только одну последнюю, а произвольное количество последних.
 |  |