View a markdown version of this page

用于最低限度聚合和比较控制的 SQL 功能 - AWS Clean Rooms

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

用于最低限度聚合和比较控制的 SQL 功能

下表列出了自定义分析规则在 Spark 分析引擎中使用最低聚合阈值和比较控制时支持和不支持的 SQL 结构和函数。函数类别遵循 AWS Clean Rooms Spark SQL 参考文档。

类别 SQL 构造 支持 通用表表达式 (CTE) 最终 SELECT 子句
查询结构
  • CACHE TABLE

  • 查询提示

  • 分析模板(参数化查询)

支持 支持
子句
  • SELECT

  • SELECT DISTINCT

  • FROM

  • FROM子查询

  • FROM行内表(值)

  • WHERE

  • GROUP BY

  • HAVING

  • ORDER BY

  • WITH(CTE)

支持 支持
  • GROUP BY CUBE

  • GROUP BY ROLLUP

  • GROUP BY GROUPING SETS

  • EXISTS

  • CLUSTER BY

  • DISTRIBUTE BY

  • SORT BY

  • LATERAL JOIN

  • PIVOT / UNPIVOT

  • WITH RECURSIVE

加入条款
  • JOIN INNER

  • JOIN LEFT

  • JOIN FULL OUTER

  • JOIN CROSS

  • JOIN RIGHT

  • JOIN NATURAL

支持 支持
  • JOIN LEFT SEMI

  • JOIN LEFT ANTI

集合运算符
  • UNION

  • UNION ALL

支持 支持
  • EXCEPT

  • EXCEPT ALL

  • INTERSECT

  • INTERSECT ALL

排序和行限制
  • ORDER BYASC/DESC

  • ORDER BY首先是空值

  • ORDER BY最后是空值

  • LIMIT

支持 支持
  • OFFSET

Conditions
  • =

  • != / <>

  • <

  • <=

  • >

  • >=

  • IN

  • NOT IN

  • LIKE

  • NOT LIKE

  • RLIKE

  • BETWEEN

  • IS TRUE / IS FALSE

  • AND

  • OR

  • NOT

  • IS DISTINCT FROM

支持 支持
  • <=>(空安全相等)

聚合函数
  • AVG 函数

  • COUNT 函数

  • COUNT DISTINCT 函数

  • SUM 函数

  • MIN 函数

  • MAX 函数

  • STDDEV/STDDEV_SAMP函数

  • STDDEV_POP 函数

  • VAR_SAMP/VARIANCE函数

  • VAR_POP 函数

  • SKEWNESS 函数

  • APPROX_COUNT_DISTINCT 函数

  • COLLECT_LIST 函数

  • COLLECT_SET 函数

  • PERCENTILE 函数

  • APPROX_PERCENTILE 函数

  • MEDIAN 函数

支持

设置聚合阈值时:MIN、、MAX、PERCENTILE、APPROX_PERCENTILE、MEDIANCOLLECT_LIST、且COLLECT_SET必须与符合条件的聚合(AVG、COUNT、SUM)结合使用。它们不能用作独立的聚合。

当只设置比较控件时:没有这样的限制。

支持所有其他聚合函数。

  • ANY_VALUE 函数

  • BOOL_AND 函数

  • BOOL_OR 函数

数组函数
  • ARRAY 函数

  • ARRAY_CONTAINS 函数

  • ARRAY_DISTINCT 函数

  • ARRAY_INTERSECT 函数

  • ARRAY_JOIN 函数

  • ARRAY_REMOVE 函数

  • ARRAY_SORT 函数

  • ARRAY_UNION 函数

  • FLATTEN 函数

  • EXPLODE 函数

支持 支持
  • ARRAY_EXCEPT 函数

条件表达式
  • IS NULL 函数

  • IS NOT NULL 函数

  • GREATEST 函数

  • LEAST 函数

  • CASE/WHEN函数

  • IF 函数

  • COALESCE 函数

  • NULLIF 函数

  • NVL 函数

  • NVL2 函数

支持 支持
构造函数
  • STRUCT 函数

  • NAMED_STRUCT 函数

  • MAP 函数

支持 支持
数据类型格式设置函数
  • STR_TO_MAP 函数

  • BASE64 函数

  • UNBASE64 函数

  • HEX 函数

  • UNHEX 函数

  • TO_DATE 函数

  • DECODE 函数

  • ENCODE 函数

  • CAST 函数

支持 支持
  • TO_CHAR 函数

  • TO_NUMBER 函数

日期和时间函数
  • CURRENT_DATE 函数

  • CURRENT_TIMESTAMP 函数

  • TO_TIMESTAMP 函数

  • DATE_DIFF 函数

  • DATE_TRUNC 函数

  • DATE_PART 函数

  • EXTRACT 函数

  • CONVERT_TIMEZONE 函数

  • FROM_UTC_TIMESTAMP 函数

  • TIMESTAMP 函数

  • DAY/DAYOFMONTH函数

  • DAYOFWEEK 函数

  • WEEKOFYEAR 函数

  • MONTH 函数

  • YEAR 函数

  • HOUR 函数

  • MINUTE 函数

  • SECOND 函数

支持 支持
  • DAYOFYEAR 函数

  • DATE_ADD 函数

  • ADD_MONTHS 函数

哈希函数
  • MD5 函数

  • SHA 函数

  • SHA1 函数

  • SHA2 函数

  • XXHASH64 函数

支持 支持
JSON 函数
  • GET_JSON_OBJECT 函数

  • TO_JSON 函数

支持 支持
数学函数
  • ABS 函数

  • CEIL/CEILING函数

  • FLOOR 函数

  • ROUND 函数

  • LN 函数

  • LOG/LOG10函数

  • POWER 函数

  • SQRT 函数

  • RAND/RANDOM函数

  • EXP 函数

  • SIGN 函数

  • TRUNC 函数

支持 支持
  • TRUNCATE 函数

  • CBRT 函数

  • PI 函数

  • RADIANS 函数

  • ACOS 函数

  • ASIN 函数

  • ATAN 函数

  • ATAN2 函数

  • COS 函数

  • COT 函数

  • SIN 函数

  • DEGREES 函数

数学运算符符号
  • +

  • -

  • *

  • /

  • %

支持 支持
标量函数
  • CARDINALITY 函数

  • SIZE 函数

支持 支持
字符串函数
  • CONCAT 函数

  • LOWER 函数

  • UPPER 函数

  • LENGTH/CHAR_LENGTH/CHARACTER_LENGTH函数

  • SUBSTR/SUBSTRING函数

  • TRIM 函数

  • BTRIM 函数

  • LTRIM 函数

  • RTRIM 函数

  • POSITION 函数

  • REPLACE 函数

  • REPEAT 函数

  • REGEXP_REPLACE 函数

  • REGEXP_SUBSTR 函数

  • SPLIT 函数

  • FORMAT_STRING 函数

  • UUID 函数

  • LPAD 函数

  • RPAD 函数

  • LEFT 函数

  • RIGHT 函数

支持 支持
  • REVERSE 函数

  • TRANSLATE 函数

  • REGEXP_COUNT 函数

  • REGEXP_INSTR 函数

  • SPLIT_PART 函数

Privacy-related 函数
  • consent_tcf_v2_decode 函数

  • consent_gpp_v1_decode 函数

支持 支持
窗口函数
  • ROW_NUMBER 函数

  • RANK 函数

  • DENSE_RANK 函数

  • LAG 函数

  • LEAD 函数

  • 窗口AVG函数

  • 窗口COUNT函数

  • 窗口SUM函数

  • 窗口MIN函数

  • 窗口MAX函数

  • 窗口STDDEV_POP函数

  • 窗口STDDEV_SAMP函数

  • 窗口VAR_POP函数

  • 窗口VAR_SAMP函数

  • 窗口SKEWNESS函数

  • 窗口APPROX_COUNT_DISTINCT函数

  • 窗口APPROX_PERCENTILE函数

  • 窗口PERCENTILE函数

支持

设置聚合阈值时:LAG、LEAD、窗口MIN、窗口MAXAPPROX_PERCENTILE、窗口和窗口PERCENTILE必须与限定聚合相结合。它们不能用作独立值。

当只设置比较控件时:没有这样的限制。

支持所有其他窗口功能。

  • FIRST/FIRST_VALUE函数

  • LAST/LAST_VALUE函数

  • NTH_VALUE 函数

  • CUME_DIST 函数

  • PERCENT_RANK 函数

  • NTILE 函数

加密和解密函数
  • AES_ENCRYPT 函数

  • AES_DECRYPT 函数

Hyperloglog 函数
  • HLL_SKETCH_AGG 函数

  • HLL_UNION_AGG 函数

  • HLL_SKETCH_ESTIMATE 函数

  • HLL_UNION 函数