跳到主要内容
版本:V1.0.0

通用语法

本节介绍 SQL 语句的通用语法,包括常量、字符集、数据类型、SQL 属性、存储属性。

常量

  • INT_VALUE:匹配整数类型常量,如 123

  • DECIMAL_VALUE:匹配定点类型常量,如 123.456

  • STR_VALUE:匹配字符串常量,如 abc

  • NULL:匹配 NULL 常量。

  • STORAGE_SIZE:匹配存储长度常量,整数形式默认单位为字节,字符串形式可指定单位为 M 或 G,例如 1024'500M'

const_value:
INT_VALUE
| DECIMAL_VALUE
| STR_VALUE
| NULL
| STORAGE_SIZE

STORAGE_SIZE:
INT_VALUE
| 'INT_VALUE[M|G]'

字符集

charset:
default_charset
| column_charset

default_charset:
[DEFAULT] {CHARSET | CHARACTER SET} [=] {UTF8 | UTF8MB4 | BINARY}

column_charset:
{CHARSET | CHARACTER SET} {UTF8 | UTF8MB4 | BINARY}

字符序

collate:
default_collate
| column_collate

default_collate:
[DEFAULT] COLLATE [=] {UTF8MB4_GENERAL_CI | UTF8MB4_BIN | BINARY}

column_collate:
COLLATE {UTF8MB4_GENERAL_CI | UTF8MB4_BIN | BINARY}

数据类型

data_type:
TINYINT[(precision)] [UNSIGNED] [ZEROFILL]
| SMALLINT[(precision)] [UNSIGNED] [ZEROFILL]
| MEDIUMINT[(precision)] [UNSIGNED] [ZEROFILL]
| INT[(precision)] [UNSIGNED] [ZEROFILL]
| INTEGER[(precision)] [UNSIGNED] [ZEROFILL]
| BIGINT[(precision)] [UNSIGNED] [ZEROFILL]
| FLOAT[(precision, scale)] [UNSIGNED] [ZEROFILL]
| DOUBLE[(precision, scale)] [UNSIGNED] [ZEROFILL]
| DECIMAL[(precision [, scale])] [UNSIGNED] [ZEROFILL]
| NUMERIC[(precision [, scale])] [UNSIGNED] [ZEROFILL]
| DATETIME[(scale)]
| TIMESTAMP[(scale)]
| DATE
| TIME[(scale)]
| YEAR
| VARCHAR(length) column_charset column_collate
| VARBINARY(length)
| CHAR[(length)] column_charset column_collate
| BINARY[(length)]
| TINYTEXT column_charset column_collate
| TINYLOB
| TEXT[(length)] column_charset column_collate
| BLOB[(length)]
| MEDIUMTEXT column_charset column_collate
| MEDIUMBLOB
| LONGTEXT column_charset column_collate
| LONGBLOB

precision | scale | length:
INT_VALUE

SQL 属性

  • 对象名

    database_name | table_name | table_alias_name | column_name| column_alias_name  | partition_name | subpartition_name:
    STR_VALUE

    index_name | view_name | object_name | constraint_name:
    STR_VALUE

    outline_name | user_name:
    STR_VALUE

    table_factor:
    [[database_name].] table_name

    column_factor:
    [table_factor.] column_name
  • 表达式

    expression:
    const_value
    | column_factor
    | operator_expression
    | function_expression
  • 注释

    comment:
    COMMENT 'comment_text'

    comment_text:
    STR_VALUE

存储属性

  • BLOCK_SIZE:指定对象存储的微块长度。

    block_size:
    BLOCK_SIZE [=] INT_VALUE
  • COMPRESSION:指定对象存储的压缩算法。

    compression:
    COMPRESSION [=] {NONE | LZ4_1.0 | LZ0_1.0 | SNAPPY_1.0}
  • PCTFREE:指定对象存储的宏块预留百分比。

    pctfree:
    PCTFREE [=] INT_VALUE
  • TABLET_SIZE:指定并行合并时单个任务的最小分片。

    tablet_size:
    TABLET_SIZE [=] INT_VALUE