Spec-Zone.ru › MySQL 8.4

26.6.3 Ограничения по разбиению, связанные с функциями

В этом разделе обсуждаются ограничения MySQL Partitioning, относящиеся конкретно к функциям, используемым в выражениях разбиения.

В выражениях разбиения разрешены только функции MySQL, представленные в следующем списке:

  • ABS()

  • CEILING() (см. CEILING() и FLOOR())

  • DATEDIFF()

  • DAY()

  • DAYOFMONTH()

  • DAYOFWEEK()

  • DAYOFYEAR()

  • EXTRACT() (см. Функцию EXTRACT() с указателем WEEK)

  • FLOOR() (см. CEILING() и FLOOR())

  • HOUR()

  • MICROSECOND()

  • MINUTE()

  • MOD()

  • MONTH()

  • QUARTER()

  • SECOND()

  • TIME_TO_SEC()

  • TO_DAYS()

  • TO_SECONDS()

  • UNIX_TIMESTAMP() (с колонками типа TIMESTAMP)

  • WEEKDAY()

  • YEAR()

  • YEARWEEK()

В MySQL 8.4 поддерживается обрезка разбиений для функций TO_DAYS(), TO_SECONDS(), YEAR() и UNIX_TIMESTAMP(). Дополнительная информация приведена в разделе 26.4, «Обрезка разбиений».

CEILING() и FLOOR(). Каждая из этих функций возвращает целое число только в случае, если ей передается аргумент точного числового типа, например, один из типов INT или DECIMAL. Например, это означает, что следующая команда CREATE TABLE завершается ошибкой, как показано ниже:

mysql> CREATE TABLE t (c FLOAT) PARTITION BY LIST( FLOOR(c) )(
    ->     PARTITION p0 VALUES IN (1,3,5),
    ->     PARTITION p1 VALUES IN (2,4,6)
    -> );
ERROR 1490 (HY000): The PARTITION function returns the wrong type

Функция EXTRACT() с указателем WEEK. Значение, возвращаемое функцией EXTRACT() при использовании в качестве EXTRACT(WEEK FROM col), зависит от значения системной переменной default_week_format. По этой причине функция EXTRACT() не разрешена в качестве функции разбиения, когда она указывает единицу измерения как WEEK. (Ошибка #54483)

Дополнительная информация о типах возвращаемых значений этих функций, а также о разделе 14.6.2, «Математические функции», и разделе 13.1, «Числовые типы данных».

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

Spec-Zone.ru

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