Usted está aquí:
Utilizar tablas intermedias para optimizar una consulta
Divida consultas de gran tamaño en componentes más pequeños para utilizar con la actividad de consulta de Automation Studio.
Aprenda cómo dividir una única consulta en múltiples consultas más eficientes. En este ejemplo, una consulta diseñada para encontrar Aperturas en los últimos 30 días basándose en un EmailID se agota de forma coherente. No utilice este código en una actividad de consulta.
SELECT
j.JobID,
j.EmailName,
j.DeliveredTime AS SendTime,
o.EventDate AS OpenTime,
s.EmailAddress,
s.SubscriberKey
FROM [_Job] j
JOIN [_Open] o
ON j.JobID = o.JobID
JOIN [_Subscribers] s
ON o.SubscriberID = s.SubscriberID
WHERE
o.IsUnique = 1 AND
j.EmailID = 123456Esta consulta puede agotar el tiempo de espera porque intenta recuperar datos de múltiples orígenes en una consulta. Para asegurarse de que esta consulta devuelve datos de forma coherente y oportuna, divídala en cuatro consultas más pequeñas en pasos separados y consecutivos de su automatización. Utilice estas instrucciones para configurar cuatro extensiones de datos y consultas correspondientes denominadas Trabajos, Aperturas, Suscriptor y Extensión de datos de destino. La Extensión de datos de destino une y almacena los datos recuperados por las consultas anteriores.
Crear una extensión de datos de tabla de trabajos
Cree una extensión de datos y, a continuación, seleccione extensión de datos estándar.
| Nombre de la extensión de datos | JobTable |
| Clave externa | JobTable |
Campos
| Nombre | Tipo de datos | Longitud | Clave principal | Admite valores nulos | Valor predeterminado |
|---|---|---|---|---|---|
| JobID | Número | ||||
| EmailName | Texto | 100 | |||
| Tiempo de entrega | Fecha |
Crear una actividad de consulta para rellenar la tabla de trabajos
| Nombre de consulta | JobTable |
| Clave externa | JobTable |
Sintaxis de consulta
SELECT
j.JobID,
j.EmailName,
j.DeliveredTime,
FROM [_Job] j
WHERE
j.EmailID = 123456| Nombre de extensión de datos de destino | JobTable |
| Acción de datos | Sobrescribir |
Crear una extensión de datos Opens
Cree una extensión de datos y, a continuación, seleccione extensión de datos estándar.
| Nombre de la extensión de datos | OpenTable |
| Clave externa | OpenTable |
Campos
| Nombre | Tipo de datos | Longitud | Clave principal | Admite valores nulos | Valor predeterminado |
|---|---|---|---|---|---|
| JobID | Número | ||||
| SubscriberID | Número | ||||
| OpenTime | Fecha |
Crear una actividad de consulta Opens
| Nombre de consulta | OpenTable |
| Clave externa | OpenTable |
Sintaxis de consulta
SELECT
o.JobID,
o.SubscriberID,
o.EventDate AS OpenTime
FROM [_Open] o
WHERE
o.IsUnique = 1
| Extensión TargetData | OpenTable |
| Acción de datos | Sobrescribir |
Crear una extensión de datos de suscriptor
Cree una extensión de datos y, a continuación, seleccione extensión de datos estándar.
| Nombre de extensión de datos de destino | SubscriberTable |
| Clave externa | SubscriberTable |
Campos
| Nombre | Tipo de datos | Longitud | Clave principal | Admite valores nulos | Valor predeterminado |
|---|---|---|---|---|---|
| SubscriberID | Número | ||||
| EmailAddress | EmailAddress | 254 | |||
| SubscriberKey | Texto | 254 |
Configurar una actividad de consulta de suscriptor
| Nombre de consulta | SubscriberTable |
| Clave externa | SubscriberTable |
Sintaxis de consulta
SELECT
s.SubscriberID,
s.EmailAddress,
s.SubscriberKey
FROM [_Subscribers] s
JOIN [OpenTable] o
ON s.SubscriberID = o.SubscriberID| Extensión de datos de destino | SubscriberTable |
| Acción de datos | Sobrescribir |
Crear una extensión de datos para almacenar datos de aperturas
Cree una extensión de datos y, a continuación, seleccione extensión de datos estándar.
| Extensión de datos de destino | OpensIn30Days |
| Clave externa | OpensIn30Days |
Campos
| Nombre | Tipo de datos | Longitud | Clave principal | Admite valores nulos | Valor predeterminado |
|---|---|---|---|---|---|
| JobID | Número | ||||
| EmailName | Texto | 100 | |||
| SendTime | Fecha | ||||
| OpenTime | Fecha | ||||
| EmailAddress | EmailAddress | 254 | |||
| SubscriberKey | Texto | 254 |
Crear una consulta para enviar datos de aperturas a extensión de datos de destino
| Nombre de consulta | OpensIn30Days |
| Clave externa | OpensIn30Days |
Sintaxis de consulta
SELECT
j.JobID,
j.EmailName,
j.DeliveredTime AS SendTime,
o OpenTime,
s.EmailAddress,
s.SubscriberKey
FROM [JobTable] j
JOIN [OpenTable] o
ON j.JobID = o.JobID
JOIN [SubscriberTable] s
ON o.SubscriberID = s.SubscriberID| Extensión de datos de destino | OpensIn30Days |
| Tipo de actualización | Sobrescribir |

