What Calendar Is Used By MySQL? 12.9 What Calendar Is Used By MySQL? 12.10 Full-Text Search Functions 2202 MySQL uses what is known as a  proleptic Gregorian calendar . Every country that has switched from the Julian to the Gregorian calendar has had to discard at least ten days during the switch. To see how this works, consider the month of October 1582, when the first Julian- to-Gregorian switch occurred. There are no dates between October 4 and October 15. This discontinuity is called the  cutover . Any dates before the cutover are Julian, and any dates following the cutover are Gregorian. Dates during a cutover are nonexistent. A calendar applied to dates when it was not actually in use is called  proleptic . Thus, if we assume there was never a cutover and Gregorian rules always rule, we have a proleptic Gregorian calendar. This is what is used by MySQL, as is required by standard SQL. For this reason, dates prior to the cutover stored as MySQL  DATE  or  DATETIME values must be adjusted to compensate for the difference. It is important to realize that the cutover did not occur at the same time in all countries, and that the later it happened, the more days were lost. For example, in Great Britain, it took place in 1752, when Wednesday September was followed by Thursday September 14. Russia remained on the Julian calendar until 1918, losing 13 days in the process, and what is popularly referred to as its “October Revolution”  occurred in November according to the Gregorian calendar. MATCH ( col1 , col2 ,...) AGAINST ( expr  [ search_modifier ]) MySQL has support for full-text indexing and searching: •For large data sets, it is much faster to load your data into a table that has no  FULLTEXT  index and then create the index after that, than to load data into a table that has an existing  FULLTEXT  index. •A  FULLTEXT  index definition can be given in the  CREATE TABLE statement when a table is created, or added later using  ALTER TABLE  or  CREATE INDEX . •MySQL provides a built-in full-text ngram parser that supports Chinese, Japanese, and Korean (CJK), and an installable MeCab full-text parser plugin for Japanese. Parsing differences are outlined in Section 12.10.8, “ngram Full-Text Parser” , and Section 12.10.9, “MeCab Full-Text Parser Plugin” . •Full-text indexes can be used only with  InnoDB  or  MyISAM tables, and can be created only for  CHAR , VARCHAR , or  TEXT  columns. •A full-text index in MySQL is an index of type  FULLTEXT . search_modifier: { IN NATURAL LANGUAGE MODE | IN NATURAL LANGUAGE MODE WITH QUERY EXPANSION | IN BOOLEAN MODE | WITH QUERY EXPANSION } Monday Tuesday Wednesday Thursday Friday Saturday Sunday 1 2 3 4 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31