查询
从一个或多个表中检索结果集。
适用于: Databricks SQL Databricks Runtime
语法
[ common_table_expression ]
{ subquery | set_operator }
[ ORDER BY clause | { [ DISTRIBUTE BY clause ] [ SORT BY clause ] } | CLUSTER BY clause ]
[ WINDOW clause ]
[ LIMIT clause ]
[ OFFSET clause ]
subquery
{ SELECT clause |
VALUES clause |
( query ) |
TABLE [ table_name | view_name ]}
参数
-
公用表表达式 (CTE) 是一个或多个命名查询,可在主查询块内重复使用多次,以避免重复计算或提高复杂嵌套查询的可读性。
subquery
生成中间结果集的几个构造之一。
-
由
SELECT FROM WHERE
模式组成的子查询。 -
指定了内联临时表。
( query )
查询的嵌套调用,其中可能包含集合运算符或公用表表达式。
TABLE
返回整个表或视图。
-
标识要返回的表。
-
标识要返回的视图。
如果找不到表或视图,Azure Databricks 会引发 TABLE_OR_VIEW_NOT_FOUND 错误。
-
-
-
使用
UNION
、EXCEPT
或INTERSECT
运算符组合子查询的构造。 -
查询的完整结果集的行顺序。 跨分区对输出行进行排序。 此参数与
SORT BY
、CLUSTER BY
和DISTRIBUTE BY
互斥,不能一起指定。 -
一组表达式,作为对结果行进行重新分区的依据。 此参数与
ORDER BY
和CLUSTER BY
互斥,不能一起指定。 -
用于对每个分区中的行进行排序的排序依据。 此参数与
ORDER BY
和CLUSTER BY
互斥,不能一起指定。 -
一组表达式,用于对行进行重新分区和排序。 使用此子句与同时使用
DISTRIBUTE BY
和SORT BY
的效果相同。 -
语句或子查询可返回的最大行数。 此子句通常与
ORDER BY
结合使用来生成确定的结果。 -
适用于: Databricks SQL Databricks Runtime 11.3 LTS 及更高版本
跳过语句或子查询返回的行数。 此子句大多与
LIMIT
结合使用,以对结果集进行分页,与ORDER BY
结合使用以产生确定的结果。注意
使用
LIMIT
和OFFSET
对结果集进行分页时,跳过的行仍会得到处理。 这些行只是在结果集中被禁止显示。 对于资源密集型查询,不建议使用此技术进行分页。 -
定义可由
select_query
中的多个窗口函数共享的命名窗口规范。