Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Глюк в работе DateDiff( ... ) / 8 сообщений из 8, страница 1 из 1
20.10.2005, 12:08
    #33334755
PaulJB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Глюк в работе DateDiff( ... )
DateDiff( year, '1973-12-01', '2005-10-20' ) возвращает 32, хотя, по идее, должна вернуть 31. Ведь год относительно 1973-12-01 еще не завершен.
Поправьте если не прав.
...
Рейтинг: 0 / 0
20.10.2005, 12:11
    #33334767
PaulJB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Глюк в работе DateDiff( ... )
Блин, забыл: ASA Version 9.0.2.3198
...
Рейтинг: 0 / 0
20.10.2005, 12:12
    #33334772
vooo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Глюк в работе DateDiff( ... )
Правильно - что вы сказали серверу, то и получили
2005-1973=32
Кстати вот такой запрос
Код: plaintext
1.
select DateDiff( dd, '1973-12-01', '2005-10-20' ) / 365 
выдаст значение 31
просто все зависит от того, что нужно в итоге получить
...
Рейтинг: 0 / 0
20.10.2005, 12:15
    #33334782
vooo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Глюк в работе DateDiff( ... )
Блин, забыл: ASA Version 9.0.2.3198
Тогда сорри - все вышесказанное относилось к ASE
Хотя возможно и чем то поможет
...
Рейтинг: 0 / 0
20.10.2005, 12:35
    #33334832
Dim2000
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Глюк в работе DateDiff( ... )
PaulJB wrote:

> DateDiff( year, '1973-12-01', '2005-10-20' ) возвращает 32, хотя, по
> идее, должна вернуть 31. Ведь год относительно 1973-12-01 еще не завершен.

RTFM.

---------------------------------------------------------------
What's New in SQL Anywhere Studio
What's New in Version 6.0.3
Behavior changes in version 6.0.3

Adaptive Server Anywhere behavior changes

datediff, MONTHS, and YEARS functions The number of months between
two dates is now calculated as the number of first-of-the-months between
the dates. For example, the difference between January 25 and February 2
is 1; the difference between January 1 and January 31 is 0. The number
of years is now calculated as the number of first-of-the-years between
the dates.

This changes the results of these functions by one number, in some
cases. The change was made for compatibility with Adaptive Server
Enterprise.
---------------------------------------------------------------
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
20.10.2005, 12:36
    #33334834
Dim2000
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Глюк в работе DateDiff( ... )
vooo wrote:

> Тогда сорри - все вышесказанное относилось к ASE

Неважно - оно теперь compatible :).
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
20.10.2005, 13:04
    #33334897
PaulJB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Глюк в работе DateDiff( ... )
2 Dimm2000
Хм. Я не думал, что к описанию ф-ции дополнительно надо изучать еще и все Behavior changes ...
Теперь буду знать ... :)
(Это не претензия)
...
Рейтинг: 0 / 0
20.10.2005, 13:07
    #33334912
Dim2000
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Глюк в работе DateDiff( ... )
PaulJB wrote:

> Хм. Я не думал, что к описанию ф-ции дополнительно надо изучать еще и
> все Behavior changes ...

Открою страшную тайну : я ничего не изучал, я сделал поиск по
DATEDIFF, ткнул в первый пункт из списка и, как выяснилось, угадал.
Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Глюк в работе DateDiff( ... ) / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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