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

Последние записи на опр. период в запросе

Последние записи на опр. период в запросе
Я
   BaldKiwi
 
20.07.21 - 05:39
Добрый день, подскажите пожалуйста, нужно отобрать из РС актуальные записи на нужный мне период, я делаю сортировку по номенклатуре, и Период <= Дата, у меня в РС вываливается 8 записей(всё правильно, 4 записи для одной номенклатуры, 4 для второй), не могу понять, как мне по итогу получить всего 2 записи по самой максимальной дате? подскажите пожалуйста
   BaldKiwi
 
1 - 20.07.21 - 05:42
Нужно получить последний актуальный ассортиментный статус у них, а если я делаю максимум по дате, то у меня из-за различия ассортиментных записей будет 4 записи, Ключи Статус1 01.01.2021 и ключи Статус 2 01.03.2021, как по итогу получить только запись 01.03.2021?
   ДенисЧ
 
2 - 20.07.21 - 05:47
СрезПоследних чем не нравится?
   BaldKiwi
 
3 - 20.07.21 - 05:54
(2) Не всегда нужно получить на последнею дату, иногда нужно будет получить на указанную дату, решил проблему вложенным запросом, насколько это оптимально?
   ДенисЧ
 
4 - 20.07.21 - 06:11
(3) Как говорилось в известном ролике - "чегобл...ь???"
СрезПоследних даст тебе срез на любую дату, а не только на гипотетическую (то есть тобой придуманную) "последнюю".

Или ты неправильно формулируешь вопрос.
   Antony8x
 
5 - 20.07.21 - 06:12
(0)ГДЕ Период <= Дата И МАКСИМУМ (Период)
   Antony8x
 
6 - 20.07.21 - 06:14
(5) + правда если период будет одинаковый, всё-равно 4 выдаст, ВЫБРАТЬ РАЗЛИЧНЫЕ может помочь
   BaldKiwi
 
7 - 20.07.21 - 06:20
(4) Не правильно строил запрос, помог срез последних, спасибо
(6) Пробовал сначала так сделать, итог был 4, различные не помогали, все равно был итог ключ Статус 1 дата и Ключ статус 2 Дата
   Antony8x
 
8 - 20.07.21 - 06:30
(7) аа, ну да, (1) не прочитал. Тогда можно временной таблицамей выбрать все записи с условием МАКСММУМ (Период) и Период <= Дата, а в результрируюющий запрос условие ГДЕ ПЕРИОД В (Выбрать Период ИЗ ВТ_) ну и выбрать различные на случай одинакового периода и измерений

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