查询语法
本页面提供 Databend 查询语法的参考信息。每个组件都可以单独使用,也可以组合起来构建强大的查询。
核心查询组件
组件 | 描述 |
---|---|
SELECT | 从表中检索数据——所有查询的基础 |
FROM / JOIN | 指定数据源并组合多个表 |
WHERE | 根据条件过滤行 |
GROUP BY | 对行进行分组并执行聚合(SUM、COUNT、AVG 等) |
HAVING | 过滤分组后的结果 |
ORDER BY | 对查询结果排序 |
LIMIT / TOP | 限制返回的行数 |
高级功能
组件 | 描述 |
---|---|
WITH (CTE) | 定义可复用的查询块,用于复杂逻辑 |
PIVOT | 将行转换为列(宽格式) |
UNPIVOT | 将列转换为行(长格式) |
QUALIFY | 在窗口函数计算后过滤行 |
VALUES | 创建内联临时数据集 |
时间回溯与流式处理
组件 | 描述 |
---|---|
AT | 查询特定时间点的数据 |
CHANGES | 跟踪插入、更新和删除 |
WITH CONSUME | 通过偏移量管理处理流式数据 |
WITH STREAM HINTS | 优化流处理行为 |
查询执行
组件 | 描述 |
---|---|
Settings | 配置查询优化和执行参数 |
查询结构
一个典型的 Databend 查询遵循以下结构:
[WITH cte_expressions]
SELECT [TOP n] columns
FROM table
[JOIN other_tables]
[WHERE conditions]
[GROUP BY columns]
[HAVING group_conditions]
[QUALIFY window_conditions]
[ORDER BY columns]
[LIMIT n]