日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

詞法結(jié)構(gòu)

本文介紹Lindorm SQL的基本詞法結(jié)構(gòu)。

背景信息

一條SQL語(yǔ)句通常是由一個(gè)記號(hào)(Token)的序列構(gòu)成,并以半角分號(hào)(;)結(jié)尾。這個(gè)記號(hào)可以是一個(gè)關(guān)鍵詞、一個(gè)標(biāo)識(shí)符、一個(gè)常量或一個(gè)特殊字符符號(hào)。兩個(gè)記號(hào)間通常以空格、制表符或新的一行來(lái)分隔。

標(biāo)識(shí)符

標(biāo)識(shí)符在SQL語(yǔ)句中用于表示數(shù)據(jù)庫(kù)、表、列或其他數(shù)據(jù)對(duì)象。Lindorm SQL的標(biāo)識(shí)符使用反引號(hào)(`)作為引用符。

  • 未加引號(hào)的標(biāo)識(shí)符,必須以字母開(kāi)頭,只能包含字母、數(shù)字和下劃線(xiàn)(_)。

  • 加引號(hào)的標(biāo)識(shí)符,例如`Employee Name`,以反引號(hào)開(kāi)頭和結(jié)尾。它們可以包含幾乎任何字符,包括空格和其他標(biāo)點(diǎn)符號(hào)。

此外,在Lindorm SQL語(yǔ)法中,不同層級(jí)的兩個(gè)數(shù)據(jù)對(duì)象間通常使用半角句號(hào)(.)進(jìn)行分隔。 例如,想要顯式指定數(shù)據(jù)庫(kù)db中的表tbl時(shí),可以用db.tbl來(lái)指定。

重要

在SQL詞法解析層面,對(duì)于標(biāo)識(shí)符的約束條件僅有以上這些。但是將這些標(biāo)識(shí)符用作具體語(yǔ)義時(shí),需遵循對(duì)應(yīng)存儲(chǔ)引擎的相關(guān)約束。具體如下:

常量

在Lindorm SQL中有兩種隱式類(lèi)型常量:字符串常量和數(shù)字常量。

  • 字符串常量

    ?字符串常量是指由半角單引號(hào)(')包圍的任意字符序列,例如'This is a string'。

  • 數(shù)字常量

    Lindorm SQL支持以下形式的數(shù)字常量:

    形式

    說(shuō)明

    digits

    digits表示一個(gè)或多個(gè)十進(jìn)制數(shù)字(0~9)。

    digitse[+-]digits

    包含指數(shù)標(biāo)記(e)的數(shù)字常量。例如4e3。

    digits.[digits][e[+-]digits]

    包含小數(shù)點(diǎn)(.)和指數(shù)標(biāo)記(e)的數(shù)字常量。例如5.3e2。

    [digits].digits[e[+-]digits]

    重要
    • 數(shù)字常量中不允許嵌入任何空格或除上述形式以外的字符。

    • 如果數(shù)字常量中包含小數(shù)點(diǎn)(.),則小數(shù)點(diǎn)的前后都至少需要存在一個(gè)十進(jìn)制數(shù)字。

    • 如果數(shù)字常量中包含指數(shù)標(biāo)記(e),則指數(shù)標(biāo)記的后面至少需要存在一個(gè)十進(jìn)制數(shù)字。

特殊字符

一些不是字母或數(shù)字的字符在不同的使用環(huán)境下可能存在特殊的含義。

  • 半角圓括號(hào)(()):用于將表達(dá)式進(jìn)行分組,并強(qiáng)制優(yōu)先。在某些特殊情況下,半角圓括號(hào)可能會(huì)被要求作為特定SQL語(yǔ)法的一部分。

  • 半角逗號(hào)(,):在某些語(yǔ)法結(jié)構(gòu)中,用于分隔列表元素。

  • 半角分號(hào)(;):結(jié)束一個(gè)SQL命令。僅允許出現(xiàn)在SQL命令句尾或字符串常量中。

  • 半角冒號(hào)(:):冒號(hào)允許出現(xiàn)在標(biāo)識(shí)符中,用于分隔列族名和列名。

  • 星號(hào)(*):用于在上下文中標(biāo)記一個(gè)表的所有域或組合值。

  • 半角句號(hào)(.):多用于數(shù)字常量中,表示小數(shù)。也可以用于標(biāo)識(shí)符中,分隔不同層級(jí)的數(shù)據(jù)對(duì)象。

關(guān)鍵字

SQL關(guān)鍵字分為保留關(guān)鍵字和非保留關(guān)鍵字。根據(jù)SQL標(biāo)準(zhǔn)規(guī)定,保留關(guān)鍵字是真正的關(guān)鍵字,僅在被引用符引用時(shí)才可以被用作標(biāo)識(shí)符。非保留關(guān)鍵字只在特殊的環(huán)境中有特殊語(yǔ)義,因此可以在非語(yǔ)義環(huán)境中被用作標(biāo)識(shí)符。

說(shuō)明

由于文檔的更新可能存在延遲。從寬表引擎2.6.3開(kāi)始,建議直接通過(guò)查詢(xún) INFORMATION_SCHEMA.KEYWORDS系統(tǒng)視圖搜索SQL引擎支持的保留關(guān)鍵字和非保留關(guān)鍵字。

Lindorm保留關(guān)鍵字

Lindorm SQL中的保留關(guān)鍵字列表如下:

首字母

保留關(guān)鍵字

A

ABS、ALL、ALLOCATE、ALLOW、ALTER、AND、ANY、ARE、ARRAY、ARRAY_MAX_CARDINALITY、AS、ASENSITIVE、ASYMMETRIC、AT、ATOMIC、AUTHORIZATION、AVG

B

BEGIN、BEGIN_FRAME、BEGIN_PARTITION、BETWEEN、BIGINT、BINARY、BIT、BLOB、BOOLEAN、BOTH、BY

C

CALL、CALLED、CARDINALITY、CASCADED、CASE、CAST、CEIL、CEILING、CHAR、CHARACTER、CHARACTER_LENGTH、CHAR_LENGTH、CHECK、CLASSIFIER、CLOB、CLOSE、COALESCE、COLLATE、COLLECT、COLUMN、COMMIT、CONDITION、 CONNECT、CONSTRAINT、CONTAINS、CONVERT、CORR、CORRESPONDING、COUNT、COVAR_POP、COVAR_SAMP、CREATE、CROSS、CUBE、CUME_DIST、CURRENT、CURRENT_CATALOG、CURRENT_DATE、CURRENT_DEFAULT_TRANSFORM_GROUP、CURRENT_PATH、CURRENT_ROLE、CURRENT_ROW、CURRENT_SCHEMA、CURRENT_TIME、CURRENT_TIMESTAMP、CURRENT_TRANSFORM_GROUP_FOR_TYPE、CURRENT_USER、CURSOR、CYCLE

D

DATE、DATETIME、DAY、DEALLOCATE、DEC、DECIMAL、DECLARE、DEFAULT、DEFINE、DELETE、DENSE_RANK、DEREF、DESCRIBE、DETERMINISTIC、DISALLOW、DISCONNECT、DISTINCT、DOUBLE、DROP、DYNAMIC

E

EACH、ELEMENT、ELSE、EMPTY、END、END-EXEC、END_FRAME、END_PARTITION、EQUALS、ESCAPE、EVERY、EXCEPT、 EXEC、EXECUTE、EXISTS、EXP、EXPLAIN、EXTEND、EXTERNAL、EXTRACT

F

FALSE、FETCH、FILTER、FIRST_VALUE、FLOAT、FLOOR、 FOR、FOREIGN、FRAME_ROW、FREE、FRIDAY、FROM、FULL、FUNCTION、FUSION

G

GEOMETRYCOLLECTION、GET、GLOBAL、GRANT、GROUP、GROUPING、GROUPS

H

HAVING、HOLD、HOUR

I

IDENTITY、IMPORT、IN、INDICATOR、INITIAL、INNER、INOUT、INSENSITIVE、INSERT、INT、INTEGER、INTERSECT、INTERSECTION、INTERVAL、INTO、IS

J

JOIN、JSON_ARRAY、JSON_ARRAYAGG、JSON_EXISTS、JSON_OBJECT、JSON_OBJECTAGG、JSON_QUERY、JSON_VALUE

L

LAG、LANGUAGE、LARGE、LAST_VALUE、LATERAL、LEAD、LEADING、LEFT、LIKE、LIKE_REGEX、LIMIT、LINESTRING、LN、LOCAL、LOCALTIME、LOCALTIMESTAMP、LOWER

M

MATCH、MATCHES、MATCH_NUMBER、MATCH_RECOGNIZE、MAX、MEASURES、MEMBER、MERGE、METHOD、MIN、MINUS、MINUTE、MOD、MODIFIES、MODULE、MONDAY、MONTH、MULTILINESTRING、MULTIPOINT、MULTIPOLYGON、MULTISET

N

NATIONAL、NATURAL、NCHAR、NCLOB、NEW、NEXT、NO、NONE、NORMALIZE、NOT、NTH_VALUE、NTILE、NULL、NULLIF、NUMERIC

O

OCCURRENCES_REGEX、OCTET_LENGTH、OF、OFFSET、OLD、OMIT、ON、ONE、ONLY、OPEN、OR、ORDER、ORDINAL、OUT、OUTER、OVER、OVERLAPS、OVERLAY

P

PARAMETER、PARTITION、PATTERN、PER、PERCENT、PERCENT_RANK、PERIOD、PERMUTE、PORTION、POSITION、POSITION_REGEX、POINT、POLYGON、POWER、PRECEDES、PRECISION、PREPARE、PREV、PRIMARY、PROCEDURE

Q

QUALIFY

R

RANGE、RANK、READS、REAL、RECURSIVE、REF、REFERENCES、REFERENCING、REGR_AVGX、REGR_AVGY、REGR_COUNT、REGR_INTERCEPT、REGR_R2、REGR_SLOPE、REGR_SXX、REGR_SXY、REGR_SYY、RELEASE、RESET、RESULT、RETURN、RETURNS、REVOKE、RIGHT、ROLLBACK、ROLLUP、ROW、ROWS、ROW_NUMBER、RUNNING

S

SAFE_CAST、SAFE_OFFSET、SAFE_ORDINAL、SATURDAY、SAVEPOINT、SCOPE、SCROLL、SEARCH、SECOND、SEEK、SELECT、SENSITIVE、SESSION_USER、SET、SHOW、SIMILAR、SKIP、SMALLINT、SOME、SPECIFIC、SPECIFICTYPE、SQL、SQLEXCEPTION、SQLSTATE、SQLWARNING、SQRT、START、STATIC、STDDEV_POP、STDDEV_SAMP、STREAM、SUBMULTISET、SUBSET、SUBSTRING、SUBSTRING_REGEX、SUCCEEDS、SUM、SUNDAY、SYMMETRIC、SYSTEM、SYSTEM_TIME、SYSTEM_USER

T

TABLE、TABLESAMPLE、THEN、THURSDAY、TIME、TIMESTAMP、TIMEZONE_HOUR、TIMEZONE_MINUTE、TINYINT、TO、 TRAILING、TRANSLATE、TRANSLATE_REGEX、TRANSLATION、TREAT、TRIGGER、TRIM、TRIM_ARRAY、TRUE、TRUNCATE、TRY_CAST、TUESDAY

U

UESCAPE、UNION、UNIQUE、UNKNOWN、UNNEST、UPDATE、UPPER、UPSERT、USER、USING

V

VALUE、VALUES、VALUE_OF、VARBINARY、VARCHAR、VARYING、VAR_POP、VAR_SAMP、VERSIONING、WEDNESDAY

W

WHEN、WHENEVER、WHERE、WIDTH_BUCKET、WINDOW、WITH、WITHIN、WITHOUT

Y

YEAR

Lindorm非保留關(guān)鍵字

Lindorm SQL中的非保留關(guān)鍵字列表如下:

首字母

非保留關(guān)鍵字

A

A、ABSENT、ABSOLUTE、ACTION、ADA、ADD、ADMIN、AFTER、AGGREGATORS、ALWAYS、APPLY、ARRAY_AGG、ARRAY_CONCAT_AGG、ASC、ASSERTION、ASSIGNMENT、ATTR、ATTRIBUTE、ATTRIBUTES、AUTO_INCREMENT

B

BEFORE、BERNOULLI、BREADTH

C

C、CASCADE、CATALOG、CATALOG_NAME、CENTURY、CHAIN、CHARACTERISTICS、CHARACTERS、CHARACTER_SET_CATALOG、CHARACTER_SET_NAME、CHARACTER_SET_SCHEMA、CLASS_ORIGIN、COBOL、COLLATION、COLLATION_CATALOG、COLLATION_NAME、COLLATION_SCHEMA、COLUMN_FAMILY、COLUMN_NAME、COLUMNS、COMMAND_FUNCTION、COMMAND_FUNCTION_CODE、COMMENT、COMMITTED、CONDITIONAL、COMPACT、CONDITION_NUMBER、CONNECTION、CONNECTION_NAME、CONSTRAINTS、CONSTRAINT_CATALOG、CONSTRAINT_NAME、CONSTRAINT_SCHEMA、CONSTRUCTOR、CONTINUE、CONTINUOUS、CURSOR_NAME

D

DATA、DATABASE、DATETIME_DIFF、DATETIME_INTERVAL_CODE、DATETIME_INTERVAL_PRECISION、DATETIME_TRUNC、DATE_DIFF、DATE_TRUNC、DAYOFWEEK、DAYOFYEAR、DAYS、DECADE、DEFAULTS、DEFERRABLE、DEFERRED、DEFINED、 DEFINER、DEGREE、DEPTH、DERIVED、 DESC、DESCRIPTION、DESCRIPTOR、DIAGNOSTICS、DISPATCH、DOMAIN、DOT、DOW、DOY、DYNAMIC_FUNCTION、DYNAMIC_FUNCTION_CODE

E

ENCODING、EPOCH、ERROR、EXCEPTION、EXCLUDE、EXCLUDING

F

FINAL、FIRST、FOLLOWING、FORMAT、FORTRAN、FOUND、FRAC_SECOND

G

G、GENERAL、GENERATED、GEOMETRY、GO、GOTO、GRANTED、GROUP_CONCAT

H

HBOOLEAN、HDOUBLE、HIERARCHY、HINTEGER、HLONG、HOP、HOURS、HSHORT、HSTRING

I

IGNORE、IF、ILIKE、IMMEDIATE、IMMEDIATELY、IMPLEMENTATION、INCLUDE、INCLUDING、 INCREMENT、INITIALLY、INPUT、INSTANCE、INSTANTIABLE、INVOKER、ISODOW、ISOLATION、ISOYEAR

J

JAVA、JSON

K

K、KEY、KEY_MEMBER、KEY_TYPE

L

LABEL、LAST、LENGTH、LEVEL、LIBRARY、LOCATOR

M

M、MAP、MATCHED、MAXVALUE、MESSAGE_LENGTH、MESSAGE_OCTET_LENGTH、MESSAGE_TEXT、MICROSECOND、MILLENNIUM、MILLISECOND、MINUTES、 MINVALUE、MONTHS、MORE、MUMPS

N

NAME、NAMES、NAMESPACE、NANOSECOND、NESTING、NORMALIZED、NULLABLE、NULLS、NUMBER

O

OBJECT、OCTETS、OPTION、OPTIONS、ORDERING、ORDINALITY、OTHERS、OUTPUT、OVERRIDING

P

PAD、PARAMETER_MODE、PARAMETER_NAME、PARAMETER_ORDINAL_POSITION、PARAMETER_SPECIFIC_CATALOG、PARAMETER_SPECIFIC_NAME、PARAMETER_SPECIFIC_SCHEMA、PARTIAL、PARTITIONS、PASCAL、PASSING、PASSTHROUGH、PASSWORD、PAST、PATH、PERCENTILE_CONT、PERCENTILE_DISC、PIVOT、PLACING、PLAN、PLI、PRECEDING、PREDOWNSAMPLE、PREDOWNSAMPLES、PRESERVE、PRIOR、PRIVILEGES、PUBLIC

Q

QUARTER、QUARTERS、QUERY、QUERIES

R

READ、RELATIVE、REPEATABLE、REPLACE、RESPECT、RESTART、RESTRICT、RETURNED_CARDINALITY、RETURNED_LENGTH、RETURNED_OCTET_LENGTH、RETURNED_SQLSTATE、RETURNING、RLIKE、ROLE、ROUTINE、ROUTINE_CATALOG、ROUTINE_NAME、ROUTINE_SCHEMA、ROW、ROW_COUNT

S

SCALAR、SCALE、SCHEMA、SCHEMA_NAME、SCOPE_CATALOGS、SCOPE_NAME、SCOPE_SCHEMA、SEARCH、SECONDS、SECTION、SECURITY、SELF、SEPARATOR、SEQUENCE、SERIALIZABLE、SERVER、SERVER_NAME、SESSION、SETS、 SIMPLE、 SIZE、SOURCE、SPACE、SPECIFIC_NAME、SQL_BIGINT、SQL_BINARY、SQL_BIT、SQL_BLOB、SQL_BOOLEAN、SQL_CHAR、 SQL_CLOB、SQL_DATE、 SQL_DECIMAL、SQL_DOUBLE、SQL_FLOAT、SQL_INTEGER、SQL_INTERVAL_DAY、SQL_INTERVAL_DAY_TO_HOUR、SQL_INTERVAL_DAY_TO_MINUTE、SQL_INTERVAL_DAY_TO_SECOND、 SQL_INTERVAL_HOUR、SQL_INTERVAL_HOUR_TO_MINUTE、SQL_INTERVAL_HOUR_TO_SECOND、SQL_INTERVAL_MINUTE、SQL_INTERVAL_MINUTE_TO_SECOND、SQL_INTERVAL_MONTH、SQL_INTERVAL_SECOND、SQL_INTERVAL_YEAR、SQL_INTERVAL_YEAR_TO_MONTH、SQL_LONGVARBINARY、SQL_LONGVARCHAR、SQL_LONGVARNCHAR、SQL_NCHAR、SQL_NCLOB、SQL_NUMERIC、SQL_NVARCHAR、SQL_REAL、SQL_SMALLINT、SQL_TIME、SQL_TIMESTAMP、SQL_TINYINT、 SQL_TSI_DAY、SQL_TSI_FRAC_SECOND、SQL_TSI_HOUR、SQL_TSI_MICROSECOND、SQL_TSI_MINUTE、SQL_TSI_MONTH、 SQL_TSI_QUARTER、 SQL_TSI_SECOND、SQL_TSI_WEEK、SQL_TSI_YEAR、SQL_VARBINARY、SQL_VARCHAR、STATE、STATEMENT、STRING_AGG、STRUCTURE、STYLE、SUBCLASS_ORIGIN、SUBSTITUTE

T

TABLES、TABLE_NAME、TAG、TEMPORARY、TIES、TIMESTAMPADD、TIMESTAMPDIFF、TIMESTAMP_DIFF、TIMESTAMP_TRUNC、TIME_DIFF、TIME_TRUNC、TOP_LEVEL_COUNT、TRANSACTION、TRANSACTIONS_ACTIVE、TRANSACTIONS_COMMITTED、TRANSACTIONS_ROLLED_BACK、TRANSFORM、TRANSFORMS、TRASH、 TRIGGER_CATALOG、TRIGGER_NAME、TRIGGER_SCHEMA、TTL、TUMBLE、TYPE

U

UNBOUNDED、UNCOMMITTED、UNCONDITIONAL、UNDER、UNMAP、UNNAMED、UNPIVOT、USAGE、USE、USERS、USER_DEFINED_TYPE_CATALOG、USER_DEFINED_TYPE_CODE、USER_DEFINED_TYPE_NAME、USER_DEFINED_TYPE_SCHEMA、UTF16、UTF32、UTF8

V

VARIABLES、VERSION、VIEW、WEEK、WEEKS

W

WILDCARD、WORK、WRAPPER、WRITE

X

XML

Y

YEARS

Z

ZONE