Loading
About Salesforce Data 360
Normalisere data med UNION-bruksområde

Normalisere data med UNION-bruksområde

Normaliser data som hentes inn i Data 360, med streaming-datatransformasjoner.

La oss se på et eksempel. Kildeobjektet CRMContacts inneholder opptil tre telefonnumre for hver kunde.

CustomerId Navn MobilePhone HomePhone Arbeidstelefon
C1 John 408-512-2234   650-342-4612
C2 Peter   310-453-3421 915-870-9900

Hvis datasjøobjektet CRMContacts tilordnes direkte til datamodellobjektet Telefonnummer til kontaktpunkt, kan bare ett kontaktpunkt – Mobiltelefon eller Hjemmebane eller Arbeidstelefon – tilordnes. Resultatet er at bare ett av de tre telefonnumrene er tilgjengelig i produktområder som bruker datamodellobjektet, som beregnet innsikt, identitetsløsning og segmentering.

Slik bruker du en strømmedatatatransformasjon til å gjøre alle tre telefonnumrene tilgjengelige.

SELECT CONCAT(CRMContacts.CustomerId, "_Mobile") as PhoneId, 
    CRMContacts.CustomerId as CustomerId, 
    CRMContacts.MobilePhone as PhoneNumber,
    "Mobile" as PhoneType
FROM CRMContacts
WHERE ISNOTNULL(CRMContacts.MobilePhone) AND CRMContacts.MobilePhone <> ""
UNION
SELECT CONCAT(CRMContacts.CustomerId, "_Home") as PhoneId,
    CRMContacts.CustomerId as CustomerId, CRMContacts.HomePhone as PhoneNumber,
    "Home" as PhoneType
FROM CRMContacts
WHERE ISNOTNULL(CRMContacts.HomePhone) AND CRMContacts.HomePhone <> ""
UNION
SELECT CONCAT(CRMContacts.CustomerId, "_Work") as PhoneId,
    CRMContacts.CustomerId as CustomerId,
    CRMContacts.WorkPhone as PhoneNumber, 
    "Work" as PhoneType
FROM CRMContacts
WHERE ISNOTNULL(CRMContacts.WorkPhone) AND CRMContacts.WorkPhone <> ""

Etter at datatransformasjonen har blitt kjørt, inneholder mål-DLO-en én post for hver type telefonnummer.

PhoneId CustomerId Telefonnummer PhoneType
C1_Mobile C1 408-512-2234 Mobiltelefon
C1_Arbeid C1 650-342-4612 Arbejde
C2_Home (Hjem) C2 310-453-3421 Hjem
C2_Work C2 915-870-9900 Arbejde

Deretter kan du tilordne DLO-en for telefonnettsteder for mål til DMO-en for telefonnettsteder for kontaktpunkter. DMO-en for telefonnummer til kontaktpunkt inneholder nå alle tre telefonnumrene for hver kunde.

For å kunne bruke UNION-operatoren i en strømmedatatatransformasjon må hver SELECT:

  • Referer til samme kildedatasjøobjekt. I eksemplet ovenfor bruker alle tre SELECT-setninger det samme kildeobjektet CRMContacts.
  • Tilordne til de samme feltene for mål-DLO. Hver SELECT-setning må ha samme skjema. I vårt eksempel tilordnes alle de tre SELECT-settene til det samme feltsettet: PhoneId, CustomerId, PhoneNumber og PhoneType.
  • Generer en unik verdi for primærnøkkelfeltet. Hvis ikke-unike verdier genereres for primærnøkkelfeltet, velges én av de ikke-unike verdiene tilfeldig. I vårt eksempel genererer CONCAT()-funksjonen unike verdier for primærnøkkelfeltet i mål-DLO.
  • Ha et unikt felt tilordnet til en primærnøkkel, eller et sett felt tilordnet til en primærnøkkel i et uttrykk.

UNION kan brukes med maksimalt fem SELECT.

 
Laster
Salesforce Help | Article