Beispiel: Verwenden der Token "TempTable" und "OutputTempTable"

Sie haben beispielsweise einen Prozess Select1, bei dem 10.000 Kunden mit dem Status „Gold“ ausgewählt werden (z. B. Indiv.AcctType = ‘Gold’). Anschließend verbinden Sie über eine direkte SQL-Abfrage Auswählen1 mit einem zweiten Prozess Auswählen (Auswählen2):

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

Bei diesem Beispiel werden Kunden ausgewählt, deren Einkäufe die Summe von 500 Euro überschritten haben und die der Eingabezelle zugewiesen sind (d. h. Kunden mit dem Kontotyp „Gold“).

Im Gegensatz dazu eine direkte SQL-Abfrage ohne das Token <TempTable> und ohne Verknüpfung:

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

Zunächst wird die Summe der Einkäufe aller Kunden in der Tabelle Einkäufe berechnet (dabei kann es sich um Millionen von Kunden handeln). Anschließend werden alle Kunden ausgewählt, deren Einkäufe die Summe von 500 Euro übersteigen (egal, ob es „Gold“-Kunden sind oder nicht).

Auch bei deaktivierter DB-interner Optimierung wird für beste Ergebnisse empfohlen, die direkten SQL-Abfragen mithilfe des Tokens <TempTable> zu erstellen, wenn eine Eingabezelle vorhanden ist.

Zur Vereinfachung wird in diesem Beispiel nicht das Token <OutputTempTable> verwendet. Um jedoch die DB-interne Optimierung beizubehalten und zu vermeiden, dass die Zielgruppen-IDs von der Datenbank wieder auf den Campaign-Server übertragen werden, müssen Sie in der direkten SQL-Abfrage das Token <OutputTempTable> verwenden. Beispiel:

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