powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как получить либо max дату, либо Null, если даты не у всех записей?
4 сообщений из 29, страница 2 из 2
Как получить либо max дату, либо Null, если даты не у всех записей?
    #32519058
tim2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ишь присоседились к моей теме! :))
2 ВС:
iif(count(MyField)=count(*),max(MyField),null)
а как это перевести? У меня получается что-то вроде "если количество [МоеПоле] равно количеству всех полей, то выводить макс.значение иначе - Null". Сразу возникают вопросы:
1. А что, если поле = Null, то его "не посчитают"?
2. Что такое "count(*)"? Может это не А97? У меня это ассоциируется с числом всех записей в запросе, а как же тогда быть если мне надо получить зто значение для каждого Заказа(оперируя датами только входящих в него артикулов) - см. пост №1.
...
Рейтинг: 0 / 0
Как получить либо max дату, либо Null, если даты не у всех записей?
    #32519078
tim2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вариант от фыыф работает, спасибо.
Только я упустил одну деталь - в сравнение дат не должны попадать артикулы двух конкретных поставщиков(т.е. если в Заказе именно подобные артикулы имеют Дату = Null, то это игнорируется и обрабатываются только остальные артикулы. Ситуации, когда в Заказе только артикулы от этих поставщиков - не бывает). Сгоряча написал:
Код: plaintext
IIf(Min([Дата] isNull) And ([Поставщик]<> 1  Or [Поставщик]<> 2 );Null;Max([Дата]))
конечно не работает!
...
Рейтинг: 0 / 0
Как получить либо max дату, либо Null, если даты не у всех записей?
    #32519175
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Отвечаю на 03:23.

1. Да, именно так.
2. Если в запросе есть group by по какому-то полю, то count (как и max, min и т.д.) выдает результаты только внутри своей группы. Звездочка значит сосчитать записи, не обращая внимания на то, что какое-то поле может быть null.
...
Рейтинг: 0 / 0
Как получить либо max дату, либо Null, если даты не у всех записей?
    #32520089
фыыф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторIIf(Min([Дата] isNull) And ([Поставщик]<>1 Or [Поставщик]<>2);Null;Max([Дата]))


конечно не работает!
скобки посчитай
IIf(Min(([Дата] IS NULL) And ([Поставщик]<>1 Or [Поставщик]<>2));Null;Max([Дата]))
если я праильно понял тему (ну, разбересси по смыслу)

и пиши либо ф-ю Isnull(aDate) либо оператор сравнения: (aDATE IS NULL)
...
Рейтинг: 0 / 0
4 сообщений из 29, страница 2 из 2
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как получить либо max дату, либо Null, если даты не у всех записей?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]