|
МИНИМУМ в запросе к справочнику не работает? | ☑ | ||
|---|---|---|---|---|
|
0
Климов Сергей
06.10.26
✎
13:23
|
Или лыжи не едут? Простейшая (упрощенная) задача: выбрать из справочника ДоговорыКонтрагентов элемент с минимальной Датой. Запрос:
ВЫБРАТЬ ДоговорыКонтрагентов.Ссылка КАК Ссылка, МИНИМУМ(ДоговорыКонтрагентов.Дата) КАК Дата ИЗ Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов СГРУППИРОВАТЬ ПО ДоговорыКонтрагентов.Ссылка И в результате получаем ВСЕ договоры из базы. ЧЯДНТ? При этом похожий по смыслу запрос к регистру сведений замечательно отбирает минимальные значения. |
|||
|
1
Fragster
гуру
06.10.26
✎
13:25
|
ну ты ему написал - выбери минимальную дату для каждой ссылки, он тебе это и сделал
|
|||
|
2
Kongo2019
06.10.26
✎
13:27
|
(0)
ВЫБРАТЬ ПЕРВЫЕ 1
ДоговорыКонтрагентов.Ссылка КАК Ссылка,
ДоговорыКонтрагентов.Дата КАК Дата
ИЗ
Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
ГДЕ
ДоговорыКонтрагентов.ПометкаУдаления = ЛОЖЬ
УПОРЯДОЧИТЬ ПО
ДоговорыКонтрагентов.Дата ВОЗРАСТАЮЩЕЙ |
|||
|
3
Волшебник
06.10.26
✎
13:28
|
Выбрать первые 1 ссылка
Из спр.Дог Упорядочить по дата |
|||
|
4
Baiji
06.10.26
✎
13:34
|
ВЫБРАТЬ
ДоговорыКонтрагентов.Ссылка КАК Ссылка ИЗ Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов ГДЕ ДоговорыКонтрагентов.Дата В (ВЫБРАТЬ МИНИМУМ(Справочник.ДоговорыКонтрагентов.Дата) КАК Дата ИЗ Справочник.ДоговорыКонтрагентов) |
|||
|
5
Fragster
гуру
06.10.26
✎
13:34
|
скорее всего у него задача "для каждого контрагента" и это типовая задача на собеседовании на джуна
|
|||
|
6
Fragster
гуру
06.10.26
✎
13:35
|
хотя я даю "три последних продажи"
|
|||
|
7
PLUT
гуру
06.10.26
✎
13:36
|
(0) добавь временную табличку или вложенный запрос в запрос
|
|||
|
8
Климов Сергей
06.10.26
✎
13:36
|
(5) Совершенно верно. Это упрощённая задача. Реально нужно для каждого из неопределённого количества контрагентов выбрать один договор, дата которого минимально отклоняется от заданной.
|
|||
|
9
Garykom
гуру
06.10.26
✎
13:40
|
(0) Все правильно
Выбрал таблицу минимальных дат относительно договоров Получил Договор|МинимальнаяДата Но так как у тебя Дата идет из самих элементов Договор (каждый договор имеет реквизит дата) - в итоге выбирает все договоры Тебе надо выбрать вероятно самый ранний договор по контрагенту? Или просто один самый ранний договор? |
|||
|
10
Garykom
гуру
06.10.26
✎
13:42
|
Или лыжи не едут?
Нет, просто летом стоишь в них одетый |
|||
|
11
Климов Сергей
06.10.26
✎
13:42
|
(9) Нужно для каждого из некоего набора контрагентов выбрать один договор, дата которого минимально отклоняется от заданной.
|
|||
|
12
Климов Сергей
06.10.26
✎
13:42
|
(10) это я понимаю.
|
|||
|
13
Garykom
гуру
06.10.26
✎
13:43
|
Задачка выбора самых ранних договоров в пределах каждого контрагента решается слегка иначе
Там или ВТ или подзапрос нужен |
|||
|
14
Garykom
гуру
06.10.26
✎
13:45
|
1. Сначала для каждого Контрагента выбери самую раннюю дату Договора, только Даты без самих ссылок на Договор
2. Затем уже имея табличку Контрагент - ДатаДоговора, банально отбираем нужные договоры и получаем Контрагент - Договор - Дата |
|||
|
15
PLUT
гуру
06.10.26
✎
13:45
|
(11) так вот жы, не благодари
https://share.google/aimode/gyhg6FIJbhbfio998 дисклеймер: всё не читал, что ИИчко написало |
|||
|
16
Garykom
гуру
06.10.26
✎
13:46
|
(14)+
3. Случай когда по одному Контрагенту, два и более Договора имею одинаковую минимальную дату - уже сам... |
|||
|
17
Garykom
гуру
06.10.26
✎
13:47
|
(15) а ИИ это (16) предусмотрел?
Или что дата может быть пустой и такие не нуна |
|||
|
18
Климов Сергей
06.10.26
✎
13:52
|
(15) Всё равно спасибо! )))
(16) (17) Разгребусь уже. Я понял, что они не пересекаются. Но ПОЧЕМУ они не пересекаются? (с) Ералаш Почему запрос к регистру сведений работает "в один приём", а к справочнику - нет? Или стараться не думать об этом? |
|||
|
19
PLUT
гуру
06.10.26
✎
13:53
|
||||
|
20
Garykom
гуру
06.10.26
✎
13:59
|
(18)
Почему запрос к регистру сведений работает "в один приём", а к справочнику - нет? Или стараться не думать об этом?
потому что запрос к РС другой, только кажется что похожий |
|||
|
21
Chameleon1980
06.10.26
✎
15:36
|
(18) потому, что у РС есть измерения. Почитай обязательно про особенности запросов к РС - тоже пригодится уже на следующем собесе.
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |