AWS Clean Rooms 差異性隱私權的 SQL 功能 - AWS Clean Rooms

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

AWS Clean Rooms 差異性隱私權的 SQL 功能

AWS Clean Rooms 差異隱私權使用一般用途查詢結構來支援複雜的 SQL 查詢。自訂分析範本會根據此結構進行驗證,以確保它們可以在受差異隱私權保護的資料表上執行。下表指出支援哪些函數。如需更多資訊,請參閱查詢結構和語法

短名稱 SQL 建構 常見資料表表達式 (CTEs) 最終 SELECT 子句
Aggregate functions
  • ANY_VALUE 函數

  • APPROXIMATE PERCENTILE_DISC 函數

  • AVG 函數

  • COUNT 和 COUNT DISTINCT 函數

  • LISTAGG 函數

  • MAX 函數

  • MEDIAN 函數

  • MIN 函數

  • PERCENTILE_CONT 函數

  • STDDEV_SAMP 和 STDDEV_POP 函數

  • SUM 和 SUM DISTINCT 函數

  • VAR_SAMP 和 VAR_POP 函數

Supported with the condition that CTEs using differential privacy protected tables must result in data with user-level records. You should write the SELECT expression in those CTEs using `SELECT userIdentifierColumn...' format. Supported aggregations: AVG, COUNT, COUNT DISTINCT, STDDEV, and SUM.
CTEs WITH clause, WITH clause subquery Supported with the condition that CTEs using differential privacy protected tables must result in data with user-level records. You should write the SELECT expression in those CTEs using `SELECT userIdentifierColumn...' format. N/A
Subqueries
  • SELECT

  • HAVING

  • JOIN

  • JOIN 條件

  • FROM

  • WHERE

You can have any subquery that doesn't reference differential privacy relations in these constructs. You can have any subquery that references differential privacy relations in a FROM and JOIN clause only.
Join clauses
  • INNER JOIN

  • LEFT JOIN

  • RIGHT JOIN

  • 完整加入

  • 【JOIN】 OR 運算子

  • CROSS JOIN

支援的條件是,在開啟差異隱私權的查詢兩個或多個資料表時,僅支援在使用者識別符資料欄上加入等同的 JOIN 函數。確保強制性的同等加入條件正確。確認資料表擁有者已在所有資料表中設定相同的使用者識別符欄,以便使用者的定義在資料表之間保持一致。

在開啟差異隱私權的情況下結合兩個或多個關係時,不支援 CROSS JOIN 函數。

Set operators UNION, UNION ALL, INTERSECT, EXCEPT | MINUS (these are synonyms) All are supported Not supported
Window functions

彙總函數

  • AVG 範圍函數

  • COUNT 範圍函數

  • CUME_DIST 範圍函數

  • DENSE_RANK 範圍函數

  • FIRST_VALUE 範圍函數

  • LAG 範圍函數

  • LAST_VALUE 範圍函數

  • LEAD 範圍函數

  • MAX 視窗函數

  • MEDIAN 視窗函數

  • MIN 視窗函數

  • NTH_VALUE 範圍函數

  • RATIO_TO_REPORT 範圍函數

  • STDDEV_SAMP 和 STDDEV_POP 視窗函數 (STDDEV_SAMP 和 STDDEV 是同義詞)

  • SUM 視窗函數

  • VAR_SAMP 和 VAR_POP 視窗函數 (VAR_SAMP 和 VARIANCE 是同義詞)

排名函數

  • DENSE_RANK 範圍函數

  • NTILE 範圍函數

  • PERCENT_RANK 範圍函數

  • RANK 範圍函數

  • ROW_NUMBER 範圍函數

All are supported with the condition that the user identifier column in the window function's partition clause is required when you query a relation with differential privacy turned on. Not supported
Conditional expressions
  • CASE 條件表達式

  • COALESCE 表達式

  • GREATEST 和 LEAST 函數

  • NVL 和 COALESCE 函數

  • NVL2 函數

  • NULLIF 函數

All are supported All are supported
Conditions
  • 比較條件

  • 邏輯條件

  • 模式比對條件

  • BETWEEN 範圍條件

  • Null 條件

EXISTS and IN cannot be used because they require subqueries. All others are supported. All are supported
Date-time functions
  • 交易中日期與時間函數

  • 串連運算子

  • ADD_MONTHS 函數

  • CONVERT_TIMEZONE 函數

  • CURRENT_DATE 函數

  • DATEADD 函數

  • DATEDIFF 函數

  • DATE_PART 函數

  • DATE_TRUNC 函數

  • EXTRACT 函數

  • GETDATE 函數

  • TIMEOFDAY 函數

  • TO_TIMESTAMP 函數

  • 日期或時間戳記函數的日期部分

All are supported All are supported
String functions
  • || (串連) 運算子

  • BTRIM 函數

  • CHAR_LENGTH 函數

  • CHARACTER_LENGTH 函數

  • CHARINDEX 函數

  • CONCAT 函數

  • LEFT 和 RIGHT 函數

  • LEN 函數

  • LENGTH 函數

  • LOWER 函數

  • LPAD 和 RPAD 函數

  • LTRIM 函數

  • POSITION 函數

  • REGEXP_COUNT 函數

  • REGEXP_INSTR 函數

  • REGEXP_REPLACE 函數

  • REGEXP_SUBSTR 函數

  • REPEAT 函數

  • REPLACE 函數

  • REPLICATE 函數

  • REVERSE 函數

  • RTRIM 函數

  • SOUNDEX 函數

  • SPLIT_PART 函數

  • STRPOS 函數

  • SUBSTRING 函數

  • TEXTLEN 函數

  • TRANSLATE 函數

  • TRIM 函數

  • UPPER 函數

All are supported All are supported
Data type formatting functions
  • CAST 函數

  • TO_CHAR

  • TO_DATE 陣列

  • TO_NUMBER

  • 日期時間格式字串

  • 數值格式字串

All are supported All are supported
Hash functions
  • MD5 函數

  • SHA 函數

  • SHA1 函數

  • SHA2 函數

  • MURMUR3_32_HASH

All are supported All are supported
Mathematical operator symbols +, -, *, /, %, and @ All are supported All are supported
Math functions
  • ABS 函數

  • ACOS 函數

  • ASIN 函數

  • ATAN 函數

  • ATAN2 函數

  • CBRT 函數

  • CEILING (或 CEIL) 函數

  • COS 函數

  • COT 函數

  • DEGREES 函數

  • DEXP 函數

  • LTRIM 函數

  • DLOG1 函數

  • DLOG10 函數

  • EXP 函數

  • FLOOR 函數

  • LN 函數

  • LOG 函數

  • MOD 函數

  • PI 函數

  • POWER 函數

  • RADIANS 函數

  • RANDOM 函數

  • ROUND 函數

  • SIGN 函數

  • SIN 函數

  • SQRT 函數

  • TRUNC 函數

All are supported All are supported
SUPER type information functions
  • DECIMAL_PRECISION 函數

  • DECIMAL_SCALE 函數

  • IS_ARRAY 函數

  • IS_BIGINT 函數

  • IS_CHAR 函數

  • IS_DECIMAL 函數

  • IS_FLOAT 函數

  • IS_INTEGER 函數

  • IS_OBJECT 函數

  • IS_SCALAR 函數

  • IS_SMALLINT 函數

  • IS_VARCHAR 函數

  • JSON_TYPEOF 函數

All are supported All are supported
VARBYTE functions
  • FROM_HEX 函數

  • FROM_VARBYTE 函數

  • TO_HEX 函數

  • TO_VARBYTE 函數

All are supported All are supported
JSON
  • CAN_JSON_PARSE 函數

  • JSON_EXTRACT_ARRAY_ELEMENT_TEXT 函數

  • JSON_EXTRACT_PATH_TEXT 函數

  • JSON_PARSE 函數

  • JSON_SERIALIZE 函數

  • JSON_SERALIZE_TO_VARBYTE 函數

All are supported All are supported
Array functions
  • 陣列函數

  • array_concat 函數

  • array_flatten 陣列

  • get_array_length 陣列

  • split_to_array 陣列

  • 子陣列函數

Not supported Not supported
Extended GROUP BY GROUPING SETS, ROLLUP, CUBE Not supported Not supported
Sort operation ORDER BY Supported with the condition that an ORDER BY clause is only supported in a window function's partition clause when querying tables with differential privacy turned on. Supported
Row limits LIMIT, OFFSET Not supported in CTEs using differential privacy protected tables All are supported
Table and column aliasing Supported Supported
Math functions on aggregate functions Supported Supported
Scalar functions within aggregate functions Supported Supported

不支援 SQL 建構的常見替代方案

類別 SQL 建構 備用

範圍函數

  • LISTAGG

  • PERCENTILE_CONT

  • PERCENTILE_DISC

You can use the equivalent aggregate function with GROUP BY.
Mathematical operator symbols
  • $column ||/ 2

  • $column |/ 2

  • $column ^ 2

  • CBRT

  • SQRT

  • POWER($column, 2)

Scalar functions
  • SYSDATE

  • $column::integer

  • convert(type, $column)

  • CURRENT_DATE

  • CAST $column AS 整數

  • CAST $column AS 類型

Literals INTERVAL ‘1 SECOND' INTERVAL '1' SECOND
Row limiting TOP n LIMIT n
Join
  • USING

  • NATURAL

ON clause should explicitly contain a join criterion.