【StarRocks】-- SQL CTE 语法
目录
一、功能介绍
二、语法
2.1、Recursive CTE
2.2、Non Recursive CTE
三、约束
四、说明
一、功能介绍
自 StarRocks 2.2 开始,便支持 CTE 语法。CTE(Common Table Expressions)表示公用表表达式,是一个临时命名结果集,用于简化SQL。是一个statement级别的子句表达式,以WITH开头,后跟表达式名称。包括以下两类:
- Recursive CTE:CTE可以迭代访问自身的场景,能够实现SQL的递归查询功能。
- Non Recursive CTE:非递归CTE,即CTE不使用递归,不迭代访问自己。
StarRocks 中 CTE 的优势:
- 代码可读性:CTE 可以使查询结构更清晰,易于理解和维护。
- 代码复用:可以在多个地方引用同一个CTE,避免了重复编写相同的查询逻辑。
- 性能优化:StarRocks 的查询优化器会根据CTE 的情况进行优化,可能提高查询性能。