Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сравнение двух дат / 8 сообщений из 8, страница 1 из 1
14.05.2004, 18:06
    #32518801
Benzin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух дат
Выражение в поле запроса:
Код: plaintext
IIf([Таблица]![Поле1] > [Таблица]![Поле2];[Таблица]![Поле1];[Таблица]![Поле2])
Оба поля - поля даты(т.е. надо найти более позднюю дату). Как правильно изменить выражение, чтобы учитывалась ситуация, когда одно из полей = Null(нет даты)?
...
Рейтинг: 0 / 0
14.05.2004, 18:18
    #32518816
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух дат
А что должно происходить в этом случае?
...
Рейтинг: 0 / 0
14.05.2004, 18:21
    #32518827
Benzin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух дат
В этом случае выводится содержимое "непустого" поля. Ситуации "оба пустые" быть не может - в запросе у каждого из них(в одной строке) стоит условие: <>Null.
...
Рейтинг: 0 / 0
14.05.2004, 18:25
    #32518834
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух дат
switch(
isnull(Поле1), Поле2,
isnull(Поле2), Поле1,
Поле1>Поле2, Поле1,
true, Поле1)
...
Рейтинг: 0 / 0
14.05.2004, 18:46
    #32518863
Benzin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух дат
Спасибо, только почему вместо "обратного" сравнения полей написано True, это что обозначает?
...
Рейтинг: 0 / 0
14.05.2004, 18:53
    #32518874
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух дат
Это вместо Else. Чтобы не тратить время на повторное сравнение. Оно сюда придет только если предыдущее сравнение не состоялось.
...
Рейтинг: 0 / 0
14.05.2004, 19:21
    #32518898
Benzin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух дат
От оно как...
А у меня само "сюда не пришло", почему-то, пришлось забивать условие(про Else я даже как-то не подумал, точнее и не знал, еще точнее - вообще первый раз этой функцией пользуюсь).
...
Рейтинг: 0 / 0
14.05.2004, 19:29
    #32518902
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сравнение двух дат
А у меня опечатка. Последняя строка должна быть:

true, Поле2)

Кстати, можно и без этой функции.

iif(isnull(Поле1), Поле2,
iif(isnull(Поле2), Поле1,
iif(Поле1>Поле2, Поле1, Поле2)))
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сравнение двух дат / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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