如何读懂语法图

适用于:check marked yes Databricks SQL check marked yes Databricks Runtime

本部分介绍在整个 SQL 参考文档中使用的各种语法模式。

基本组件

关键字

SELECT

在本文档中,SQL 中的关键字始终大写,但不区分大小写。

标记

( )
<  >
.
*
,

SQL 语言包括圆括号(())和尖括号(<>)、点 (.)、逗号 (,) 及其他一些字符。 当语法图中存在这些字符时,必须按原样输入这些字符。

子句

LIMIT clause

SELECT named_expression

named_expression
  expression AS alias

子句表示语法的命名子部分。 局部子句在调用它的同一语法图中描述。 如果该子句很常见,它将链接到 Databricks SQL 参考文档的另一部分。 某些子句由其主要 keyword 命名,并通过大写关键字后接子句进行描述。 其他子句始终采用小写,在适当的情况下使用下划线 (_)。 下一部分将全面介绍局部子句。 所有其他子句具有简短说明,其中提供了主页的链接。

参数

mapExpr

函数的参数在 camelCase 中指定。 Databricks SQL 的“参数”部分介绍了参数的含义。

令牌链

SELECT expr

必须无条件地按顺序输入以空格分隔的组件,并且只能用空格或注释进行分隔。 Databricks SQL 支持 /* ... */(C 样式)和 -- ...(扩展到行尾)格式的注释。

选择

指定语法中的分支。

必需的选择

{ INT | INTEGER }

大括号{ ... } 表示必须指定多个组件中的一个(且只能是一个)。 每项选择以 | 分隔。

可选的选择

[ ASC | DESC ]

方括号 [ ... ] 指示最多可以选择多个组件中的一个。 每项选择以 | 分隔。

分组

{ SELECT expr }

{ SELECT
 expr }

大括号 { ... } 指定必须提供所有嵌入的组件。 如果语法图跨多行,则这种形式将会阐明它描述相同的语法。

选项

[ NOT NULL ]

方括号 [...] 指定包含的组件是可选的。

重复

col_option [...]

col_alias [, ...]

{ expr [ AS ] col_alias } [, ...]

[...] 省略号表示法指示可以多次重复紧靠在前面的组件、分组或选择。 如果省略号的前面有另一个字符(例如分隔点 [. ...] 或逗号 [, ...]),则必须用该字符分隔每个重复项。