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à.
Regola di analisi delle liste
Nota
Si applica a: motore AWS Clean Rooms SQL di analisi
In AWS Clean Rooms, una regola di analisi degli elenchi genera elenchi a livello di riga della sovrapposizione tra la tabella configurata a cui viene aggiunta e le tabelle configurate del membro che può eseguire la query. Il membro che può eseguire query esegue query che includono una regola di analisi dell'elenco.
Il tipo di regola di analisi degli elenchi supporta casi d'uso come l'arricchimento e la creazione di audience.
Per ulteriori informazioni sulla struttura e sulla sintassi delle query predefinite per questa regola di analisi, vedere. Struttura predefinita della regola di analisi delle liste
I parametri della regola di analisi dell'elenco, definita inRegola di analisi delle liste: controlli di interrogazione, dispongono di controlli di interrogazione. I suoi controlli di interrogazione includono la possibilità di selezionare le colonne che possono essere elencate nell'output. La query deve avere almeno un join con una tabella configurata dal membro che può eseguire la query, direttamente o in modo transitivo.
Non esistono controlli sui risultati delle query come per la regola di analisi di aggregazione.
Le query di elenco possono utilizzare solo operatori matematici. Non possono utilizzare altre funzioni (come l'aggregazione o lo scalare).
Argomenti
Elenca la struttura e la sintassi delle interrogazioni
Le interrogazioni su tabelle che dispongono di una regola di analisi degli elenchi devono rispettare la sintassi seguente.
--
select_list_expression
SELECT [TOP number ] DISTINCT column_name [[AS] column_alias ] [, ...] --table_expression
FROM table_name [[AS] table_alias ] [[INNER] JOIN table_name [[AS] table_alias] ON join_condition] [...] --where_expression
[WHERE where_condition] --limit_expression
[LIMIT number]
Nella tabella seguente vengono illustrate tutte le espressioni elencate nella sintassi precedente.
Expression | Definizione | Esempi |
---|---|---|
|
Un elenco separato da virgole contenente almeno il nome di una colonna della tabella. È richiesto un NotaLe colonne Supporta anche il |
|
|
Una tabella, o unione di tabelle,
I
|
|
|
Un'espressione condizionale che restituisce un valore booleano. Può essere composta dai seguenti elementi:
Le condizioni di confronto supportate sono () Gli operatori logici supportati sono (
|
|
|
Questa espressione deve assumere un numero intero positivo. Può anche essere scambiato con un TOP parametro. Il |
|
Per quanto riguarda la struttura e la sintassi delle query di elenco, tenete presente quanto segue:
-
SQLi comandi diversi da non SELECT sono supportati.
-
Sottoquery ed espressioni di tabella comuni (ad esempio, WITH) non sono supportate
-
HAVING, GROUP BY, e ORDER BY le clausole non sono supportate
-
OFFSETil parametro non è supportato
Regola di analisi delle liste: controlli di interrogazione
Con i controlli di interrogazione degli elenchi, puoi controllare come le colonne della tabella vengono utilizzate per interrogare la tabella. Ad esempio, è possibile controllare quale colonna viene utilizzata per l'unione o quale colonna può essere utilizzata nell'SELECTistruzione e WHERE clausola.
Nelle sezioni seguenti viene illustrato ogni controllo.
Argomenti
Unisci i controlli
Con i controlli Join, puoi controllare come la tua tabella può essere unita ad altre tabelle in table_expression. AWS Clean Rooms supporta solo INNER JOIN. Nella regola di analisi dell'elenco, almeno una INNER JOINè obbligatorio e il membro che può eseguire la query deve includere una tabella di sua proprietà nella INNER JOIN. Ciò significa che devono unire il tuo tavolo al loro, direttamente o transitivamente.
Di seguito è riportato un esempio di transitività.
ON my_table.identifer = third_party_table.identifier .... ON third_party_table.identifier = member_who_can_query_table.id
INNER JOINle istruzioni possono utilizzare solo colonne che sono state esplicitamente classificate come una joinColumn
nella regola di analisi.
Il INNER JOINdeve operare su una joinColumn
tabella configurata e su un'altra tabella configurata all'interno della collaborazione. joinColumn
Sei tu a decidere quali colonne della tabella possono essere utilizzate comejoinColumn
.
Ogni condizione di partita all'interno di ON è necessaria una clausola per utilizzare la condizione di confronto di uguaglianza (=
) tra due colonne.
Condizioni di corrispondenza multiple all'interno di un ON la clausola può essere:
-
Combinato utilizzando l'operatore
AND
logico -
Separato utilizzando l'operatore
OR
logico
Nota
Tutti JOIN le condizioni di partita devono corrispondere a una riga su ciascun lato del JOIN. Anche tutti i condizionali collegati da un operatore logico OR
o da un operatore AND
logico devono rispettare questo requisito.
Di seguito è riportato un esempio di interrogazione con un operatore logicoAND
.
SELECT some_col, other_col FROM table1 JOIN table2 ON table1.id = table2.id AND table1.name = table2.name
Di seguito è riportato un esempio di interrogazione con un operatore OR
logico.
SELECT some_col, other_col FROM table1 JOIN table2 ON table1.id = table2.id OR table1.name = table2.name
Controllo | Definizione | Utilizzo |
---|---|---|
joinColumns |
Le colonne che si desidera consentire al membro che può eseguire la query di utilizzare in INNER JOINdichiarazione. |
La stessa colonna non può essere classificata sia come a
|
Elenca i controlli
I controlli elenco controllano le colonne che possono essere elencate nell'output della query (ovvero utilizzate nell'SELECTistruzione) o utilizzate per filtrare i risultati (ovvero utilizzate in WHERE dichiarazione).
Controllo | Definizione | Utilizzo |
---|---|---|
listColumns |
Le colonne che consenti al membro che può eseguire la query di utilizzare in SELECT e WHERE | A listColumn può essere utilizzato in SELECT e WHERE.La stessa colonna non può essere utilizzata sia come che come |
Struttura predefinita della regola di analisi delle liste
L'esempio seguente include una struttura predefinita che mostra come completare una regola di analisi dell'elenco.
Nell'esempio seguente,
fa riferimento alla tabella di dati. È possibile sostituire ciascuno di essi MyTable
user input placeholder
con le proprie informazioni.
{ "joinColumns": [
MyTable column name(s)
], "listColumns": [MyTable column name(s)
], }
Regola di analisi delle liste: esempio
L'esempio seguente dimostra come due aziende possono collaborare AWS Clean Rooms utilizzando l'analisi delle liste.
La società A dispone di dati sulla gestione delle relazioni con i clienti (CRM). La società A desidera ottenere dati di segmento aggiuntivi sui propri clienti per saperne di più sui propri clienti e potenzialmente utilizzare gli attributi come input per altre analisi. L'azienda B dispone di dati sui segmenti composti da attributi di segmento unici creati sulla base dei dati di prima parte. La società B desidera fornire gli attributi univoci del segmento alla società A solo ai clienti che si sovrappongono tra i loro dati e i dati dell'azienda A.
Le aziende decidono di collaborare in modo che l'azienda A possa arricchire i dati sovrapposti. La società A è il socio che può effettuare le domande e la società B è il collaboratore.
Per creare una collaborazione ed eseguire l'analisi degli elenchi in collaborazione, le aziende eseguono le seguenti operazioni:
-
L'azienda A crea una collaborazione e crea un'iscrizione. La collaborazione ha l'azienda B come altro membro della collaborazione. La società A consente la registrazione delle interrogazioni nella collaborazione e la registrazione delle query nel proprio account.
-
L'azienda B crea un'appartenenza alla collaborazione. Consente la registrazione delle interrogazioni nel proprio account.
-
La società A crea una tabella CRM configurata
-
La società A aggiunge la regola di analisi alla tabella configurata dal cliente, come mostrato nell'esempio seguente.
{ "joinColumns": [ "identifier1", "identifier2" ], "listColumns": [ "internalid", "segment1", "segment2", "customercategory" ] }
joinColumns
— La società A desidera utilizzarehashedemail
e/othirdpartyid
(ottenuto da un fornitore di identità) abbinare i clienti dai CRM dati ai clienti dei dati del segmento. Ciò contribuirà a garantire che l'azienda A abbini dati arricchiti per i clienti giusti. Ne hanno due joinColumns per migliorare potenzialmente il tasso di corrispondenza dell'analisi.listColumns
— La società A le utilizza accantolistColumns
per ottenere colonne arricchite einternalid
le utilizza all'interno dei propri sistemi.segment1
Aggiungonosegment2
ecustomercategory
potenzialmente limitano l'arricchimento a segmenti specifici utilizzandoli nei filtri. -
La società B crea una tabella configurata per segmenti.
-
La società B aggiunge la regola di analisi alla tabella configurata del segmento.
{ "joinColumns": [ "identifier2" ], "listColumns": [ "segment3", "segment4" ] }
joinColumns
— La società B consente all'azienda A di partecipareidentifier2
per abbinare i clienti dai dati del segmento ai CRM dati. La società A e la società B hanno collaborato con il fornitore di identità per ottenereidentifier2
una soluzione adatta a questa collaborazione. Non ne hanno aggiunti altrijoinColumns
perché ritenevano cheidentifier2
fornisse il tasso di corrispondenza più elevato e preciso e non fossero necessari altri identificatori per le query.listColumns
— L'azienda B consente all'azienda A di arricchire i propri dati consegment3
segment4
attributi unici che ha creato, raccolto e utilizzato (con il cliente A) per contribuire all'arricchimento dei dati. Vogliono che l'azienda A ottenga questi segmenti per la sovrapposizione a livello di riga perché si tratta di una collaborazione per l'arricchimento dei dati. -
La società A crea un'associazione CRM tabellare alla collaborazione.
-
La società B crea un'associazione di tabelle di segmenti alla collaborazione.
-
L'azienda A esegue interrogazioni, come la seguente, per arricchire i dati sovrapposti dei clienti.
SELECT companyA.internalid, companyB.segment3, companyB.segment4 INNER JOIN returns companyB ON companyA.identifier2 = companyB.identifier2 WHERE companyA.customercategory > 'xxx'
-
L'azienda A e la società B esaminano i registri delle interrogazioni. La società B verifica che la richiesta sia in linea con quanto concordato nell'accordo di collaborazione.