Fonctionnalités SQL de AWS Clean Rooms Differential Privacy - AWS Clean Rooms

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Fonctionnalités SQL de AWS Clean Rooms Differential Privacy

AWS Clean RoomsLa confidentialité différentielle utilise une structure de requête polyvalente pour prendre en charge les requêtes SQL complexes. Les modèles d'analyse personnalisés sont validés par rapport à cette structure afin de garantir qu'ils peuvent être exécutés sur des tables protégées par une confidentialité différentielle. Le tableau suivant indique les fonctions prises en charge. Pour plus d’informations, consultez Structure et syntaxe des requêtes.

Catégorie Constructions SQL prises en charge par le moteur d'analyse Spark Expressions de table courantes (CTEs) Clause SELECT finale
Fonctions d’agrégation
  • Fonction ANY_VALUE

  • Fonction APPROXIMATE PERCENTILE_DISC

  • Fonction AVG

  • Fonctions COUNT et COUNT DISTINCT

  • Fonction MAX

  • Fonction MEDIAN

  • Fonction MIN

  • Fonction PERCENTILE_CONT

  • Fonctions STDDEV_SAMP et STDDEV_POP

  • Fonctions SUM et SUM DISTINCT

  • Fonctions VAR_SAMP et VAR_POP

Soutenu à la condition que l' CTEs utilisation de tables protégées par la confidentialité différentielle doit aboutir à des données contenant des enregistrements au niveau de l'utilisateur. Vous devez écrire l'expression SELECT dans ceux qui CTEs utilisent le `SELECT userIdentifierColumn...' format. Agrégations prises en charge : AVG, COUNT, COUNT DISTINCT, STDDEV et SUM.
CTEs clause WITH, sous-requête de clause WITH Soutenu à la condition que l' CTEs utilisation de tables protégées par la confidentialité différentielle doit aboutir à des données contenant des enregistrements au niveau de l'utilisateur. Vous devez écrire l'expression SELECT dans ceux qui CTEs utilisent le `SELECT userIdentifierColumn...' format. N/A
Sous-requêtes
  • SELECT

  • HAVING

  • JOIN

  • Condition d'adhésion

  • FROM

  • WHERE

Vous pouvez avoir n'importe quelle sous-requête qui ne fait pas référence à des relations de confidentialité différentielles dans ces constructions. Vous pouvez avoir n'importe quelle sous-requête qui fait référence à des relations de confidentialité différentielles uniquement dans une clause FROM et JOIN.
Clauses d'adhésion
  • JOINT INTÉRIEUR

  • JOINTURE GAUCHE

  • DEMI-JOINT GAUCHE

  • ANTI-JOINTURE GAUCHE

  • JOINTURE DROITE

  • ADHÉSION COMPLÈTE

  • [JOIN] OU opérateur

  • CROSS JOIN

Supportée à la condition que seules les fonctions JOIN qui sont des jointures égales sur les colonnes d'identifiant utilisateur soient prises en charge et soient obligatoires lors de l'interrogation de deux tables ou plus avec la confidentialité différentielle activée. Assurez-vous que les conditions d'équijointure obligatoires sont correctes. Vérifiez que le propriétaire de la table a configuré la même colonne d'identifiant utilisateur dans toutes les tables afin que la définition d'un utilisateur reste cohérente d'une table à l'autre.

Les fonctions CROSS JOIN ne sont pas prises en charge lors de la combinaison de deux relations ou plus lorsque la confidentialité différentielle est activée.

Définir les opérateurs UNION, UNION ALL, INTERSECT, EXCEPT | MINUS (ce sont des synonymes) UNION, UNION ALL, INTERSECT, EXCEPT | MINUS (ce sont des synonymes) Non pris en charge
Fonctions de fenêtrage

Fonctions d’agrégation

  • Fonction de fenêtrage AVG

  • Fonction de fenêtrage COUNT

  • Fonction de fenêtrage CUME_DIST

  • Fonction de fenêtrage DENSE_RANK

  • Fonction de fenêtrage FIRST_VALUE

  • Fonction de fenêtrage LAG

  • Fonction de fenêtrage LAST_VALUE

  • Fonction de fenêtrage LEAD

  • Fonctions de fenêtre MAX

  • Fonctions de la fenêtre MEDIAN

  • Fonctions de la fenêtre MIN

  • Fonction de fenêtrage NTH_VALUE

  • Fonctions de fenêtre STDDEV_SAMP et STDDEV_POP (STDDEV_SAMP et STDDEV sont des synonymes)

  • Fonctions de la fenêtre SUM

  • Fonctions de fenêtre VAR_SAMP et VAR_POP (VAR_SAMP et VARIANCE sont des synonymes)

Fonctions de classement

  • Fonction de fenêtrage DENSE_RANK

  • Fonction de fenêtrage NTILE

  • Fonction de fenêtrage PERCENT_RANK

  • Fonction de fenêtrage RANK

  • Fonction de fenêtrage ROW_NUMBER

Tous sont pris en charge à condition que la colonne d'identifiant utilisateur de la clause de partition de la fonction de fenêtre soit requise lorsque vous interrogez une relation avec la confidentialité différentielle activée. Non pris en charge
Expressions conditionnelles
  • Expression de condition CASE

  • Expression COALESCE

  • Fonctions GREATEST et LEAST

  • Fonctions NVL et COALESCE

  • NVL2 fonction

  • Fonction NULLIF

Tous sont pris en charge Tous sont pris en charge
Conditions
  • Condition de comparaison

  • Conditions logiques

  • Conditions de correspondance de modèles

  • ENTRE les conditions de gamme

  • Condition null

EXISTSet ne IN peuvent pas être utilisés car ils nécessitent des sous-requêtes. Tous les autres sont pris en charge. Tous sont pris en charge
Fonctions date-heure
  • Fonctions date et heure dans les transactions

  • Opérateur de concaténation

  • Fonctions ADD_MONTHS

  • Fonction CONVERT_TIMEZONE

  • Fonction CURRENT_DATE

  • Fonction DATEADD

  • Fonction DATEDIFF

  • fonctions DATE_PART

  • Fonction DATE_TRUNC

  • Fonction EXTRACT

  • Fonction TO_TIMESTAMP

  • Parties de date pour les fonctions de date ou d’horodatage

Tous sont pris en charge Tous sont pris en charge
Fonctions de chaîne
  • opérateur || (concaténation)

  • Fonction BTRIM

  • Fonction CHAR_LENGTH

  • Fonction CHARACTER_LENGTH

  • Fonction CONCAT

  • Fonctions LEFT et RIGHT

  • Fonction LEN

  • Fonction LENGTH

  • Fonction LOWER

  • Fonctions LPAD et RPAD

  • Fonction LTRIM

  • Fonctions POSITION

  • Fonction REGEXP_COUNT

  • Fonction REGEXP_INSTR

  • Fonction REGEXP_REPLACE

  • Fonction REGEXP_SUBSTR

  • Fonction REPEAT

  • Fonction REPLACE

  • Fonction REVERSE

  • Fonction RTRIM

  • Fonction SPLIT_PART

  • Fonction SUBSTRING

  • Fonction TRANSLATE

  • Fonctions TRIM

  • Fonction UPPER

Tous sont pris en charge Tous sont pris en charge
Fonctions de formatage des types de données
  • Fonction CAST

  • TO_CHAR

  • Fonction TO_DATE

  • TO_NUMBER

  • Chaînes de format datetime

  • Chaînes de format numériques

Tous sont pris en charge Tous sont pris en charge
Fonctions de hachage
  • AES_ENCRYPT

  • AES_DECRYPT

  • ENCODE

  • DECODE

  • MD5 fonction

  • SHA1 fonction

  • SHA2 fonction

  • XX_ HASH64

Tous sont pris en charge Tous sont pris en charge
Symboles d’opérateurs mathématiques +, -, *,/, % et @ Tous sont pris en charge Tous sont pris en charge
Fonctions mathématiques
  • Fonction ABS

  • Fonction ACOS

  • Fonction ASIN

  • Fonction ATAN

  • ATAN2 fonction

  • Fonction CBRT

  • Fonction CEILING (ou CEIL)

  • Fonction COS

  • Fonction COT

  • Fonction DEGREES

  • Fonction LTRIM

  • Fonction EXP

  • Fonction FLOOR

  • Fonction LN

  • Fonction LOG

  • Fonction MOD

  • Fonction PI

  • Fonction POWER

  • Fonction RADIANS

  • Fonction RANDOM

  • Fonction ROUND

  • Fonction SIGN

  • Fonction SIN

  • Fonctions SQRT

  • Fonction TRUNC

Tous sont pris en charge Tous sont pris en charge
Fonctions VARBYTE
  • UNHEX,

  • UNBASE64

  • SORT

  • HLL_SKETCH_AGG,

  • HLL_SKETCH_ESTIMATE

  • HL_UNION

  • HL_UNION_AGG

Tous sont pris en charge Tous sont pris en charge
JSON
  • TO_JSON

  • GET_JSON_OBJECT

Tous sont pris en charge Tous sont pris en charge
Fonctions de tableau
  • ARRAY_CONTAINS

  • ARRAY_DISTINCT

  • ARRAY_EXCEPTÉ

  • ARRAY_INTERSECT

  • ARRAY_JOIN

  • ARRAY_REMOVE

  • ARRAY_SORT

  • ARRAY_UNION

Non pris en charge Non pris en charge
GROUPE PAR ÉTENDU ENSEMBLES DE REGROUPEMENT, ROLLUP, CUBE Non pris en charge Non pris en charge
Opération de tri ORDER BY Supportée à la condition qu'une clause ORDER BY ne soit prise en charge dans la clause de partition d'une fonction de fenêtre que lors de l'interrogation de tables avec la confidentialité différentielle activée. Pris en charge
Limites de lignes LIMITE, DÉCALAGE Non pris en charge CTEs lors de l'utilisation de tables protégées par la confidentialité différentielle Tous sont pris en charge
Aliasing de tables et de colonnes Pris en charge Pris en charge
Fonctions mathématiques sur les fonctions d'agrégation Pris en charge Pris en charge
Fonctions scalaires dans les fonctions d'agrégation Pris en charge Pris en charge

Alternatives courantes pour les constructions SQL non prises en charge

Catégorie construction SQL Autrement

Fonctions de fenêtrage

  • LISTAGG

  • PERCENTILE_CONT

  • PERCENTILE_DISC

Vous pouvez utiliser la fonction d'agrégation équivalente avec GROUP BY.
Symboles d’opérateurs mathématiques
  • $column ||/ 2

  • $column |/ 2

  • $column ^ 2

  • CBRT

  • SQRT

  • PUISSANCE ($column, 2)

Fonctions scalaires
  • SYSDATE

  • $column : :entier

  • convertir (type, $column)

  • CURRENT_DATE

  • CAST $column EN TANT QU'entier

  • Type CAST $column AS

Littéraux INTERVALLE « 1 SECONDE » INTERVALLE « 1 » SECONDE
Limitation des lignes STOP n LIMITE n
Joindre
  • USING

  • NATURAL

La clause ON doit contenir explicitement un critère de jointure.