Ejemplo: Uso de los identificadores TempTable y OutputTempTable

Supongamos que usted tiene un proceso Select1 que selecciona 10.000 clientes con categoría “Gold” (por ejemplo, Indiv.AcctType = ‘Gold’). A continuación, conecta Select1 a un segundo proceso Selección (“Select2”) mediante una consulta SQL sin formato:

Select p.CustID from Indiv p, <TempTable> where p.CustID = <TempTable>.CustID group by p.CustID having sum(p.PurchAmt) > 500

Este ejemplo selecciona clientes cuya suma de compras supera los 500 USD y que se encuentran en la celda de entrada (en otras palabras, clientes que tienen un tipo de cuenta “Gold”).

Por otro lado, una consulta SQL sin formato que omita el identificador <TempTable> y una:

Select p.CustID from Purchases p group by p.CustID having sum(p.PurchAmt) > 500

primero calcula la suma de compras de todos los clientes en la Tabla de compras (que podría dar millones de clientes) y, a continuación, selecciona todos los clientes cuya suma de compras supere los 500 USD, independientemente de si son clientes “Gold” o no.

Por lo tanto, para obtener el mejor rendimiento, incluso si la optimización de la base de datos está desactivada, escriba las consultas SQL sin formato mediante el identificador <TempTable> cuando haya una celda de entrada.

Para simplificar, este ejemplo no utiliza el identificador <OutputTempTable>, pero para mantener la optimización de la base de datos y evitar que los ID de audiencia se recuperen de la base de datos y se envíen de vuelta al servidor de Campaign, se debe incluir el identificador <OutputTempTable> en la consulta SQL sin formato. Por ejemplo:

Create table <OutputTempTable> as Select p.CustID from Purchases p, <TempTable> where p.CustID = <TempTable>.CustID group by p.CustID having sum(p.PurchAmt) > 500



IBM Unica Campaign
 
8.5.0
For more information, see our support and community site: Customer Central