

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Funzionalità SQL di AWS Clean Rooms Differential Privacy
<a name="dp-sql-capabilities"></a>

AWS Clean Rooms Differential Privacy utilizza una struttura di query generica per supportare query SQL complesse. I modelli di analisi personalizzati vengono convalidati in base a questa struttura per garantire che possano essere eseguiti su tabelle protette dalla privacy differenziale. La tabella seguente indica quali funzioni sono supportate. Per ulteriori informazioni, consulta [Struttura e sintassi delle query](analysis-rules-custom.md#dp-query-structure-syntax).


| Categoria | Costrutti SQL supportati nel motore di analisi Spark | Espressioni di tabella comuni () CTEs | Clausola SELECT finale | 
| --- |--- |--- |--- |
| Funzioni di aggregazione |    Funzione ANY\_VALUE   Funzione APPROXIMATE PERCENTILE\_DISC   Funzione AVG   Funzioni COUNT e COUNT DISTINCT   Funzione MAX   Funzione MEDIAN   Funzione MIN   Funzione PERCENTILE\_CONT   Funzioni STDDEV\_SAMP e STDDEV\_POP   Funzioni SUM e SUM DISTINCT   Funzioni VAR\_SAMP e VAR\_POP    | Supportata a condizione che l' CTEs utilizzo di tabelle differenziali protette dalla privacy debba generare dati con record a livello utente. È necessario scrivere l'espressione SELECT in quelle che CTEs utilizzano `SELECT userIdentifierColumn...' il formato. | Aggregazioni supportate: AVG, COUNT, COUNT DISTINCT, STDDEV e SUM. | 
| CTEs | clausola WITH, clausola WITH, sottoquery | Supportata a condizione che l' CTEs utilizzo di tabelle differenziali protette dalla privacy debba generare dati con record a livello utente. È necessario scrivere l'espressione SELECT in quelle che CTEs utilizzano `SELECT userIdentifierColumn...' il formato. | N/D | 
| Sottoquery |    SELECT   HAVING   JOIN   Condizione JOIN   FROM   WHERE    | Puoi avere qualsiasi sottoquery che non faccia riferimento a relazioni di privacy differenziali in questi costrutti. È possibile avere qualsiasi sottoquery che faccia riferimento a relazioni di privacy differenziali solo in una clausola FROM e JOIN. | 
| Clausole Join |    INNER JOIN   LEFT JOIN   LEFT SEMI JOIN   ANTIUNIONE SINISTRA   RIGHT JOIN   ADESIONE COMPLETA   [JOIN] operatore OR   CROSS JOIN    | Supportato a condizione che solo le funzioni JOIN che sono equi-join nelle colonne degli identificatori utente siano supportate e siano obbligatorie quando si eseguono query su due o più tabelle con la privacy differenziale attivata. Assicurati che le condizioni equi-join obbligatorie siano corrette. Verifica che il proprietario della tabella abbia configurato la stessa colonna identificativa utente in tutte le tabelle in modo che la definizione di un utente rimanga coerente tra le tabelle.<br />Le funzioni CROSS JOIN non sono supportate quando si combinano due o più relazioni con la privacy differenziale attivata. | 
| Operatori su set | UNION, UNION ALL, INTERSECT, EXCEPT \| MINUS (questi sono sinonimi) | UNION, UNION ALL, INTERSECT, EXCEPT \| MINUS (questi sono sinonimi) | Non supportata | 
| Funzioni finestra | Funzioni di aggregazione  Funzione finestra AVG   Funzione finestra COUNT   Funzione finestra CUME\_DIST   Funzione finestra DENSE\_RANK   Funzione finestra FIRST\_VALUE   Funzione finestra LAG   Funzione finestra LAST\_VALUE   Funzione finestra LEAD   Funzioni MAX Window   Funzioni della finestra MEDIAN   Funzioni della finestra MIN   Funzione finestra NTH\_VALUE   funzione di finestra STDDEV\_SAMP e STDDEV\_POP (STDDEV\_SAMP e STDDEV sono sinonimi)   Funzioni della finestra SUM   Funzioni di finestra VAR\_SAMP e VAR\_POP (VAR\_SAMP e VARIANCE sono sinonimi)  <br />Funzioni di classificazione  Funzione finestra DENSE\_RANK   Funzione finestra NTILE   Funzione finestra PERCENT\_RANK   Funzione finestra RANK   Funzione finestra ROW\_NUMBER   | Tutte sono supportate a condizione che la colonna dell'identificatore utente nella clausola di partizione della funzione finestra sia richiesta quando si esegue una query su una relazione con la privacy differenziale attivata. | Non supportata | 
| Espressioni condizionali |    espressione della condizione CASE   espressione COALESCE   Funzioni GREATEST e LEAST   Funzioni NVL e COALESCE   NVL2 funzione   Funzione NULLIF    | Tutti sono supportati | Sono tutte supportate | 
| Condizioni |    Condizione di confronto   Condizioni logiche   Condizioni di corrispondenza di modelli   Condizioni di intervallo BETWEEN   Condizione Null    | EXISTSe non IN possono essere utilizzati perché richiedono sottoquery. Tutti gli altri sono supportati. | Tutti sono supportati | 
| Funzioni data-ora |    Funzioni di data e ora nelle transazioni   Operatore di concatenazione   Funzioni ADD\_MONTHS   Funzione CONVERT\_TIMEZONE   Funzione CURRENT\_DATE   Funzione DATEADD   Funzione DATEDIFF   Funzioni DATE\_PART   Funzione DATE\_TRUNC   Funzione EXTRACT   Funzione TO\_TIMESTAMP   Parti di data per funzioni di data e timestamp    | Sono tutte supportate | Sono tutte supportate | 
| Funzioni stringa |    \|\| operatore (concatenazione)   Funzione BTRIM   Funzione CHAR\_LENGTH   Funzione CHARACTER\_LENGTH   Funzione CONCAT   Funzioni LEFT e RIGHT   Funzione LEN   Funzione LENGTH   Funzione LOWER   Funzioni LPAD e RPAD   Funzione LTRIM   Funzioni POSITION   Funzione REGEXP\_COUNT   Funzione REGEXP\_INSTR   Funzione REGEXP\_REPLACE   Funzione REGEXP\_SUBSTR   Funzione REPEAT   Funzione REPLACE   Funzione REVERSE   Funzione RTRIM   Funzione SPLIT\_PART   Funzione SUBSTRING   Funzione TRANSLATE   Funzioni TRIM   Funzione UPPER    | Sono tutte supportate | Sono tutte supportate | 
| Funzioni di formattazione del tipo di dati |    Funzione CAST   TO\_CHAR   Funzione TO\_DATE   TO\_NUMBER   Stringhe di formato datetime   Stringhe di formato numerico    | Sono tutte supportate | Sono tutte supportate | 
| Funzioni hash |    AES\_ENCRYPT   AES\_DECRYPT   ENCODE   DECODE   MD5 funzione   SHA1 funzione   SHA2 funzione   XX\_ HASH64    | Tutti sono supportati | Sono tutte supportate | 
| Simboli degli operatori matematici | \+, -, \*,/,% e @ | Tutti sono supportati | Sono tutte supportate | 
| Funzioni matematiche |    Funzione ABS   Funzione ACOS   Funzione ASIN   Funzione ATAN   ATAN2 funzione   Funzione CBRT   Funzione CEILING (oppure CEIL)   Funzione COS   Funzione COT   Funzione DEGREES   Funzione LTRIM   Funzione EXP   Funzione FLOOR   Funzione LN   Funzione LOG   Funzione MOD   Funzione PI   Funzione POWER   Funzioni RADIANS   Funzione RANDOM   Funzione ROUND   Funzione SIGN   Funzione SIN   funzioni SQRT   Funzione TRUNC    | Sono tutte supportate | Sono tutte supportate | 
| Funzioni VARBYTE |    UNESADECIMALE,   UNBASE64   ESAGONALE    HLL\_SKETCH\_AGG,    HLL\_SKETCH\_ESTIMATE   HLL\_UNION   HLL\_UNION\_AGG    | Tutti sono supportati | Sono tutte supportate | 
| JSON |    TO\_JSON   GET\_JSON\_OBJECT    | Tutti sono supportati | Sono tutte supportate | 
| Funzioni di array |    ARRAY\_CONTAINS   ARRAY\_DISTINCT   ARRAY\_EXCEPT   ARRAY\_INTERSECT   ARRAY\_JOIN   ARRAY\_REMOVE   ORDINAMENTO\_MATRICE   UNIONE A MATRICE    | Non supportata | Non supportata | 
| GROUP BY esteso | SET DI RAGGRUPPAMENTO, ROLLUP, CUBO | Non supportata | Non supportata | 
| Operazione di ordinamento | ORDER BY | Supportata a condizione che una clausola ORDER BY sia supportata solo nella clausola di partizione di una funzione finestra quando si eseguono interrogazioni su tabelle con privacy differenziale attivata. | Supportata | 
| Limiti di riga | LIMIT, OFFSET | Non è supportato CTEs l'utilizzo di tabelle differenziali protette dalla privacy | Sono tutte supportate | 
| Alias di tabelle e colonne |   | Supportata | Supportata | 
| Funzioni matematiche su funzioni aggregate |   | Supportata | Supportata | 
| Funzioni scalari all'interno di funzioni aggregate |   | Supportata | Supportata | 

## Alternative comuni per costrutti SQL non supportati
<a name="common-alternatives"></a>


| Categoria | costrutto SQL | In alternativa | 
| --- |--- |--- |
| Funzioni finestra |    LISTAGG   PERCENTILE\_CONT   PERCENTILE\_DISC    | È possibile utilizzare la funzione di aggregazione equivalente con GROUP BY. | 
| Simboli degli operatori matematici |    $colonna \|\|/ 2   $colonna \|/ 2   $colonna ^ 2    |    CBRT   SQRT   POTENZA ($colonna, 2)    | 
| Funzioni scalari |    SYSDATE   $colonna: :intero   converti (tipo, $colonna)    |    CURRENT\_DATE   CAST $column COME numero intero   Tipo AS CAST $column    | 
| Valori letterali | INTERVALLO '1 SECONDO' | INTERVALLO '1' SECONDO | 
| limitazione delle righe | TOP n | LIMITE n | 
| Join |    USING   NATURAL    | La clausola ON deve contenere esplicitamente un criterio di unione. | 