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 |