2016-09-02 3 views
1

Mysql сервер дляMySQL DayOfYear возвращать разные значения (MySQL ошибка с високосного года)

SELECT 
    DAYOFYEAR(FROM_UNIXTIME(unix_birthday, "%Y-%m-%d")) as birthday_day, 
    FROM_UNIXTIME(unix_birthday, "%Y-%m-%d") as usual_date, 
    unix_birthday 
FROM workers 

возвращается

unix_birthday | usual_date | day_number 
    246  | 1980-09-02 | 336690000 
    245  | 1990-09-02 | 652222800 

Почему дни разные (245 и 246)?

+0

Можно учитывать местный часовой пояс. –

ответ

2

1980 - leap year, а 1990 - нет.

+0

так? (mysql ошибается, и я нашел ошибку?) – aewawc4453

+0

Нет, MySQL правильный. Должен ли я действительно объяснить, что такое високосный год? Кстати, это объясняется в ссылке, которую я предоставил. – Shadow

+0

ty, я понял – aewawc4453

Смежные вопросы