Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Regla de análisis de lista
nota
Se aplica a: motor de análisis AWS Clean Rooms SQL
En AWS Clean Rooms, una regla de análisis de listas genera listas a nivel de fila de la superposición entre la tabla configurada a la que se agrega y las tablas configuradas del miembro que puede realizar la consulta. El miembro que puede realizar consultas ejecuta consultas que incluyen una regla de análisis de lista.
El tipo de regla de análisis de listas admite casos de uso como el enriquecimiento y la creación de audiencia.
Para obtener más información sobre la estructura y la sintaxis de consulta predefinidas de esta regla de análisis, consulte Estructura predefinida de la regla de análisis de lista.
Los parámetros de la regla de análisis de lista, que se define en Regla de análisis de lista: controles de consulta, tienen controles de consulta. Estos controles de consulta incluyen la posibilidad de seleccionar las columnas que se pueden enumerar en la salida. La consulta debe tener al menos una combinación con una tabla configurada del miembro que puede realizar consultas, ya sea de forma directa o transitiva.
No hay controles de resultados de consulta como los que existen para la regla de análisis de agregación.
Las consultas de lista solo pueden utilizar operadores matemáticos. No pueden usar otras funciones (por ejemplo, de agregación o escalares).
Temas
Estructura y sintaxis de las consultas de lista
Las consultas de las tablas que tienen una regla de análisis de lista deben respetar la siguiente sintaxis.
--
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]
En la siguiente tabla se explica cada una de las expresiones enumeradas en la sintaxis anterior.
Expression | Definición | Ejemplos |
---|---|---|
|
Una lista separada por comas que contiene al menos un nombre de columna de tabla. Es obligatorio un parámetro notaLa También admite el parámetro |
|
|
Una tabla, o combinación de tablas, con
La
|
|
|
Una expresión condicional que devuelve un valor booleano. Puede constar de los siguientes elementos:
Las condiciones de comparación admitidas son ( Los operadores lógicos admitidos son ( La |
|
|
Esta expresión debe tener adoptar un entero positivo. También se puede intercambiar con un parámetro TOP. La |
|
En cuanto a la estructura y sintaxis de las consultas de lista, tenga en cuenta lo siguiente:
-
No se admiten comandos SQL distintos de SELECT.
-
Subconsultas y expresiones de tabla comunes (por ejemplo, WITH) no se admiten
-
TENIENDO, GROUP BY, y ORDER BY no se admiten cláusulas
-
No se admite el parámetro OFFSET.
Regla de análisis de lista: controles de consulta
Los controles de consulta de lista le permiten controlar cómo se utilizan las columnas de su tabla a la hora de consultar esta última. Por ejemplo, puede controlar qué columna se usa para unir o qué columna se puede usar en la instrucción SELECT y WHERE cláusula.
En las secciones siguientes se explica cada uno de los controles.
Controles de combinación
Con los controles Join, puede controlar cómo se puede unir su tabla a otras tablas de la table_expression. AWS Clean Rooms solo admite INNER UNIRSE. En la regla de análisis de listas, al menos una INNER Es obligatorio unirse y el miembro que puede realizar la consulta debe incluir una tabla de su propiedad en el INNER UNIRSE. Esto significa que deben combinar su tabla con la suya, ya sea de forma directa o transitiva.
A continuación se muestra un ejemplo de transitividad.
ON my_table.identifer = third_party_table.identifier .... ON third_party_table.identifier = member_who_can_query_table.id
INNER Las sentencias JOIN solo pueden usar columnas que se hayan clasificado explícitamente como a joinColumn
en su regla de análisis.
La INNER JOIN debe funcionar en una joinColumn
tabla configurada y en otra tabla configurada joinColumn
de la colaboración. Usted decide qué columnas de la tabla se pueden usar como joinColumn
.
Cada condición de coincidencia dentro del ON la cláusula es necesaria para utilizar la condición de comparación de igualdad (=
) entre dos columnas.
Varias condiciones de coincidencia dentro de un ON la cláusula puede ser:
-
Combinación con el operador lógico
AND
-
Separación mediante el operador lógico
OR
nota
Todos JOIN las condiciones de coincidencia deben coincidir con una fila de cada lado del JOIN. Todos los condicionales conectados por un operador AND
lógico OR
o uno lógico también deben cumplir con este requisito.
A continuación se muestra un ejemplo de consulta con un operador lógico AND
.
SELECT some_col, other_col FROM table1 JOIN table2 ON table1.id = table2.id AND table1.name = table2.name
A continuación se muestra un ejemplo de consulta con un operador lógico OR
.
SELECT some_col, other_col FROM table1 JOIN table2 ON table1.id = table2.id OR table1.name = table2.name
Control | Definición | Uso |
---|---|---|
joinColumns |
Las columnas que desea permitir que el miembro que puede realizar la consulta las utilice en el INNER Declaración JOIN. |
Una misma columna no se puede categorizar como
|
Controles de lista
Los controles de lista controlan las columnas que se pueden enumerar en el resultado de la consulta (es decir, se pueden utilizar en la instrucción SELECT) o se pueden utilizar para filtrar los resultados (es decir, se pueden utilizar en el WHERE declaración).
Control | Definición | Uso |
---|---|---|
listColumns |
Las columnas que permites que el miembro que puede realizar la consulta utilice en SELECT y WHERE | A se listColumn puede usar en SELECT y WHERE.Una misma columna no se puede usar como |
Estructura predefinida de la regla de análisis de lista
El siguiente ejemplo incluye una estructura predefinida que muestra cómo completar una regla de análisis de lista.
En el siguiente ejemplo,
hace referencia a nuestra tabla de datos. Puede reemplazar cada uno MyTable
user input placeholder
con su propia información.
{ "joinColumns": [
MyTable column name(s)
], "listColumns": [MyTable column name(s)
], }
Regla de análisis de lista: ejemplo
El siguiente ejemplo demuestra cómo dos empresas pueden colaborar en el AWS Clean Rooms uso del análisis de listas.
La empresa A dispone de datos de administración de las relaciones con los clientes (CRM). La empresa A desea obtener datos de segmento adicionales sobre sus clientes para conocer mejor a estos últimos y, posiblemente, utilizar los atributos como entrada en otros análisis. La empresa B tiene datos de segmento compuestos por atributos de segmento únicos que creó basándose en sus datos de primera parte. La empresa B desea proporcionar los atributos de segmento únicos a la empresa A solo para aquellos clientes que se superponen entre sus datos y los datos de la empresa A.
Las empresas deciden colaborar para que la empresa A pueda enriquecer los datos superpuestos. La empresa A es el miembro que puede realizar consultas y la empresa B es el colaborador.
Para crear una colaboración y ejecutar en ella un análisis de lista, las empresas hacen lo siguiente:
-
La empresa A crea una colaboración y crea una pertenencia. La colaboración tiene a la empresa B como un miembro más de la colaboración. La empresa A habilita el registro de consultas en la colaboración y habilita el registro de consultas en su cuenta.
-
La empresa B crea una pertenencia en la colaboración. Habilita el registro de consultas en su cuenta.
-
La empresa A crea una tabla configurada de CRM.
-
La empresa A agrega la regla de análisis a la tabla configurada por el cliente, como se muestra en el siguiente ejemplo.
{ "joinColumns": [ "identifier1", "identifier2" ], "listColumns": [ "internalid", "segment1", "segment2", "customercategory" ] }
joinColumns
: la empresa A quiere usarhashedemail
y/othirdpartyid
(obtenidos de un proveedor de identidad) para cotejar los clientes de los datos de CRM con los clientes de los datos de segmento. Esto ayudará a garantizar que la empresa A relacione los datos enriquecidos con los clientes correctos. Tienen dos JoinColumns para mejorar potencialmente la tasa de coincidencia del análisis.listColumns
: la empresa A usalistColumns
para obtener columnas enriquecidas junto con uninternalid
que utiliza en sus propios sistemas. Añadesegment1
,segment2
ycustomercategory
para, potencialmente, limitar el enriquecimiento a segmentos específicos mediante su uso en filtros. -
La empresa B crea una tabla configurada de segmento.
-
La empresa B añade la regla de análisis a la tabla configurada por de segmento.
{ "joinColumns": [ "identifier2" ], "listColumns": [ "segment3", "segment4" ] }
joinColumns
: la empresa B permite a la empresa A combinarse conidentifier2
para relacionar a los clientes de los datos de segmento con los datos de CRM. La empresa A y la empresa B trabajaron con el proveedor de identidades para obtener unidentifier2
que se ajustara a la colaboración. No añadieron otrasjoinColumns
porque creían queidentifier2
proporciona la tasa de coincidencia más alta y precisa y que no se precisaban otros identificadores para las consultas.listColumns
: la empresa B permite a la empresa A enriquecer sus datos con los atributossegment3
ysegment4
, que son atributos únicos que han creado, recopilado y alineado en (con el cliente A) para formar parte del enriquecimiento de datos. Quieren que la empresa A obtenga estos segmentos para solaparlos a nivel de fila, ya que se trata de una colaboración de enriquecimiento de datos. -
La empresa A crea una asociación a la tabla de CRM en la colaboración.
-
La empresa B crea una asociación a la tabla de segmento en la colaboración.
-
La empresa A ejecuta consultas, como la siguiente, para enriquecer los datos de clientes que se solapan.
SELECT companyA.internalid, companyB.segment3, companyB.segment4 INNER JOIN returns companyB ON companyA.identifier2 = companyB.identifier2 WHERE companyA.customercategory > 'xxx'
-
La empresa A y la empresa B revisan los registros de consultas. La empresa B comprueba que la consulta se ajusta a lo acordado en el contrato de colaboración.