Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / dateadd и високосный год / 12 сообщений из 12, страница 1 из 1
30.03.2004, 18:05
    #32462774
Alexus12
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
dateadd и високосный год
dateadd("yyyy",-2,"28/2/2004")
28/02/2002

dateadd("yyyy",-2,"29/2/2004")
- опять 28/02/2002 !!!

что за хрень?!

А97 SP2
...
Рейтинг: 0 / 0
30.03.2004, 18:16
    #32462790
Kelme
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
dateadd и високосный год
Такая особенность значит у DateAdd, проверил на Acc2003 и на Acc2002, там тоже так считает. В хелпе написано след.:

The DateAdd function won't return an invalid date. The following example adds one month to January 31:

DateAdd("m", 1, "31-Jan-95")

In this case, DateAdd returns 28-Feb-95, not 31-Feb-95. If date is 31-Jan-96, it returns 29-Feb-96 because 1996 is a leap year
...
Рейтинг: 0 / 0
30.03.2004, 18:17
    #32462791
Гавриленко Сергей Алексеевич
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
dateadd и високосный год
авторчто за хрень?!
В 2002 нету 29 февраля.
...
Рейтинг: 0 / 0
30.03.2004, 18:17
    #32462793
Гавриленко Сергей Алексеевич
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
dateadd и високосный год
авторТакая особенность значит у DateAdd, проверил на Acc2003 и на Acc2002, там тоже так считает.
И сиквел-сервер тоже.
...
Рейтинг: 0 / 0
31.03.2004, 14:41
    #32464007
Alexus12
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
dateadd и високосный год
в 2002 и не должно быть 29 фев

ясно
нужно ему явно говорить
что хочу вычесть не его кривой год
(или месяц обгрызая три дня как в примере!!!)
а 365 или 366 дней

dateadd("d",-365,"29/2/2004")
...
Рейтинг: 0 / 0
31.03.2004, 16:33
    #32464365
фыыф
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
dateadd и високосный год
НУ, ешкин кот. Он ж для того и придумано штоба именно годы или месяцы отымать. Кривые-то они не "его", они ж в _календарях_ кривые. А дни простче отымаются, без всяких dateadd-ов:
?#29/2/2004#-365
01.03.2003
...
Рейтинг: 0 / 0
31.03.2004, 16:46
    #32464396
Senin Viktor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
dateadd и високосный год
Такая особенность функции DataAdd полезна при "вычислении" високосного года не заморачиваясь с случаями-исключениями (100-ые и 400-ые года)

DateAdd("d",1,"28-02-2003")= 1 марта (не високосный год!)
DateAdd("d",1,"28-02-2004")= 29 февраля - (високосный!)


Ну очень полезная и хоршая функция, если научится ей пользоваться
...
Рейтинг: 0 / 0
31.03.2004, 16:59
    #32464416
zz
zz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
dateadd и високосный год
Чего? А разве 100-ые и 400-ые года не являются високосными?
...
Рейтинг: 0 / 0
31.03.2004, 17:58
    #32464568
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
dateadd и високосный год
100-е являются, а 400-е нет.
...
Рейтинг: 0 / 0
31.03.2004, 18:45
    #32464658
в натуре?
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
dateadd и високосный год
прикалываемся, значить?

?dateadd("yyyy",-1604,"29/2/2004")
29.02.400
...
Рейтинг: 0 / 0
31.03.2004, 19:48
    #32464719
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
dateadd и високосный год
Очень странно.\r
/topic/58715#416954
...
Рейтинг: 0 / 0
31.03.2004, 21:15
    #32464744
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
dateadd и високосный год
Тьфу. Наоборот, конечно. 400-е являются, а 100-е нет. Пардон.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / dateadd и високосный год / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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