Имя: Пароль:
1C
 
Как сделать связь в запросе по возрастанию?
0 Lama12
 
09.12.24
17:04
Как связать таблицы в запросе?
Таблица 1
Поле1	Поле2
1	Л
2	Л
3	Л

Таблица 2
Поле1	Поле2
5	П
7	П
6	П
8	П


В качестве результата нужно получить
Поле1	Поле2	Поле3	Поле4
1	Л	5	П
2	Л	6	П
3	Л	7	П


Связь по Поле1, но нужно учитывать величину значения в поле. Т.е. с минимальным значением в Таблице 1 должно связываться минимальное значение из Таблицы 2. Потом по возрастанию. Количество результирующих записей должно быть равно минимальному набору в левой или в правой таблице (в примере 3 строки вместо 4).

Если будет удобно, вот текст запроса для экспериментов с приведенными таблицами.
тестовые данные запросом

ВЫБРАТЬ
    1 КАК Поле1,
    "Л" КАК Поле2
ПОМЕСТИТЬ Таблица1

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    2,
    "Л"

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    3,
    "Л"
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    5 КАК Поле1,
    "П" КАК Поле2
ПОМЕСТИТЬ Таблица2

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    7,
    "П"

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    6,
    "П"

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    8,
    "П"
1 Волшебник
 
09.12.24
17:04
Что за абстрактная херня? Зачем всё это?
2 Lama12
 
09.12.24
17:12
Можно и не абстрактно.
Есть плановые поступления ДС. Есть обещанные поступления ДС. Их количество может не совпадать. Даты могут не совпадать. Суммы совпадают. Может быть несколько поступлений с одинаковой суммой. Нужно связать их по принципу ФИФО по датам.
3 Волшебник
 
09.12.24
17:14
(2) Чем плановые отличаются от обещанных?
4 Lama12
 
09.12.24
17:14
Плановые по договору. Обещанные - как менеджеры договорились.
5 laeg
 
09.12.24
17:18
(0) Выборка в ВТ с сортировкой и доп.полем АВТОНОМЕРЗАПИСИ()
В итоговой ВТ соединение по этому полю
6 scanduta
 
09.12.24
17:18
(0) Сделай 2 временные таблицы , добавь новое поле "НомерСтроки" которое генерится (аналог rownumer() в sql), с учетом сортировки по величине нужного поля
7 Lama12
 
09.12.24
17:28
(5) Идею понял. Спасибо!
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn