Spec-Zone.ru › MySQL 8.4

13.2.7 Какой календарь используется в MySQL?

MySQL использует так называемый пролептический григорианский календарь.

В каждой стране, которая перешла от юлианского к григорианскому календарю, пришлось отбросить как минимум десять дней во время перехода. Чтобы понять, как это работает, рассмотрим месяц октябрь 1582 года, когда произошёл первый переход от юлианского к григорианскому календарю.

Понедельник Вторник Среда Четверг Пятница Суббота Воскресенье
1 2 3 4 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

Между 4 октября и 15 октября нет дат. Эта прерывистость называется переходом. Все даты до перехода — юлианские, а все даты после перехода — григорианские. Даты во время перехода не существуют.

Календарь, применяемый к датам, когда он фактически не использовался, называется пролептическим. Таким образом, если предположить, что перехода никогда не было и григорианские правила всегда действовали, у нас есть пролептический григорианский календарь. Именно он используется в MySQL, как того требует стандарт SQL. По этой причине даты до перехода, хранящиеся в качестве значений MySQL DATE или DATETIME, должны быть скорректированы для компенсации разницы. Важно понимать, что переход не происходил одновременно во всех странах, и чем позже он происходил, тем больше дней терялось. Например, в Великобритании он произошёл в 1752 году, когда среду 2 сентября сменил четверг 14 сентября. Россия оставалась на юлианском календаре до 1918 года, потеряв при этом 13 дней, и то, что обычно называют её «Октябрьской революцией», произошло в ноябре по григорианскому календарю.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/mysql-calendar.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API