Beam Calcite SQL 概述
Apache Calcite 是一种广泛用于大数据处理的 SQL 方言,它有一些流式增强功能。Beam Calcite SQL 是 Beam SQL 的默认方言。
Beam SQL 具有额外的扩展功能,利用 Beam 的统一批处理/流式模型和处理复杂数据类型。您可以将这些扩展功能与所有 Beam SQL 方言一起使用,包括 Beam Calcite SQL。
查询语法
查询语句扫描一个或多个表或表达式,并返回计算出的结果行。有关 Beam Calcite SQL 中查询语句的更多信息,请参阅 查询语法 参考。
词法结构
Beam SQL 语句包含一系列标记。有关 Beam Calcite SQL 中标记的更多信息,请参阅 词法结构 参考。
数据类型
Beam SQL 支持标准 SQL 标量数据类型,以及包括数组、映射和嵌套行在内的扩展。有关 Beam Calcite SQL 中标量数据的更多信息,请参阅 数据类型 参考。
函数和运算符
下表总结了 Beam Calcite SQL 支持的 Apache Calcite 函数和运算符。
运算符和函数 | Beam SQL 支持状态 |
---|---|
运算符优先级 | 是 |
比较运算符 | 请参阅 Beam SQL 标量函数 |
逻辑运算符 | 请参阅 Beam SQL 标量函数 |
算术运算符和函数 | 请参阅 Beam SQL 标量函数 |
字符字符串运算符和函数 | 请参阅 Beam SQL 标量函数 |
二进制字符串运算符和函数 | 否 |
日期/时间函数 | 请参阅 Beam SQL 标量函数 |
系统函数 | 否 |
条件函数和运算符 | 请参阅 Beam SQL 标量函数 |
类型转换 | 是 |
值构造函数 | 否,除了数组 |
集合函数 | 否 |
周期谓词 | 否 |
JDBC 函数转义 | 否 |
聚合函数 | 请参阅 Beam SQL 扩展 聚合函数 |
窗口函数 | 否 |
分组函数 | 否 |
分组窗口函数 | 请参阅 Beam SQL 扩展 窗口和触发 |
分组辅助函数 | 是,除了 SESSION_END |
空间函数 | 否 |
几何创建函数(3D) | 否 |
几何谓词 | 否 |
JSON 函数 | 否 |
用户定义函数 | 请参阅 Beam SQL 扩展 用户定义函数。您无法调用带有 命名和可选参数 的函数。 |
MATCH_RECOGNIZE | 否 |
DDL 扩展 | 请参阅 Beam SQL 扩展 CREATE EXTERNAL TABLE |