Salesforce Marketing Cloud - SQL Besonderheiten & Tipps Teil 2

Nachdem wir uns im ersten Teil dieser Reihe mit der Problematik der Zeitzonen bei Abfragen mit Datumswerten beschäftigt haben, nun zu einer viel genutzten Methode zur Zusammenführung von Daten aus mehreren Quellen. Bei der SQL-Funktion UNION entscheiden ebenfalls Feinheiten über die Korrektheit von Ergebnissen.

SQL in Salesforce Marketing Cloud – Keine Fehler, aber dennoch falsche Ergebnisse?

Falle 2: Vorsicht bei der Verwendung von UNION

Die UNION-Funktion wird verwendet, um Daten mit ähnlicher Struktur aus zwei oder mehr Data Extensions zu einer Datentabelle zusammenzuführen. Hier ein Beispiel für eine gängige Abfrage:

SELECT EmailAddress,
	SubscriberKey,  
	FirstName,
	LastName
	FROM [DataExtension1]
UNION
SELECT EmailAddress,   
	SubscriberKey,   
	FirstName,   
	LastName
	FROM [DataExtension2]

Diese Abfrage kombiniert die Felder aus DataExtension1 und DataExtension2 in eine neue Data Extension. Die UNION-Funktion entfernt dabei automatisch doppelte Datensätze. Hierbei gibt es jedoch ebenfalls eine Stolperfalle zu beachten: Die Anzahl und Reihenfolge der Felder in allen UNION SQL-Abfragen müssen übereinstimmen.

Unterschiedliche Felderanzahl in Data Extensions bei SQL-Abfragen korrekt handhaben

Die Lösung ist recht einfach. Wenn ein Feld in einer der Data Extensions fehlt, sollten Sie entweder einen Default-Wert vergeben oder festlegen, dass das Feld leerbleiben soll. Es ist wichtig, dass Sie ein fehlendes Feld wie FirstName in der zweiten Data Extension nicht einfach weglassen, da dies zu einer Fehlermeldung führen wird. Wir erläutern an einem Beispiel:

Nehmen wir an, Data Extension 1 ist folgendermaßen aufgebaut:

EmailAddress | SubscriberKey | FirstName | LastName
Und DataExtension2 hat die Felder in dieser Reihenfolge:

SubscriberKey | EmailAddress | LastName

Sie möchten nun die Daten aus beiden Data Extensions zusammenführen und in DataExtension3 speichern, die das gleiche Feldlayout wie DataExtension1 aufweist. Um sicherzustellen, dass keine Probleme auftreten, sollten Sie die folgende Abfrage verwenden:

SELECT EmailAddress,
	SubscriberKey,
	FirstName,
    LastName
	FROM [DataExtension1]
UNION
SELECT EmailAddress,
	SubscriberKey,
	FirstName=NULL,
	LastName,
	FROM [DataExtension2]

Ihr Ergebnis in Data Extension 3 wird folgendermaßen aussehen:

EmailAddress
SubscriberKey
FirstName
LastName
example@example.de
ABCDE12345
Max
Mustermann
beispiel@beispiel.de
VWXYZ67890
Musterfrau

Warum ist die Reihenfolge der Felder in UNION-Abfragen so wichtig?

Eine weitere Besonderheit bei der Verwendung von UNION ist die Reihenfolge der abgefragten Felder. Diese Reihenfolge muss in allen Abfragen, die zum UNION gehören, exakt gleich sein. Andernfalls werden die Ergebnisse nicht wie gewünscht zusammengeführt, obwohl keine Fehlermeldung angezeigt wird. Wichtig hierbei zu wissen ist, dass die Reihenfolge der Felder in der ersten Abfrage vor dem UNION-Befehl die Reihenfolge bestimmt, in der die Felder in die Ziel-Data-Extension geschrieben werden. Diese Reihenfolge bleibt dann für alle nachfolgenden Abfragen im UNION bestehen. Auch hierfür haben wir ein kleines Beispiel:

Wenn Sie z.B. die Reihenfolge aus den Data Extensions übernehmen, diese aber wie hier im Beispiel unterschiedlich ist:

SELECT EmailAddress,
	SubscriberKey,
	FirstName,
	LastName
	FROM [DataExtension1]

UNION

SELECT SubscriberKey,   
	EmailAddress,   
	LastName,   
	FirstName = NULL

dann würde Ihr Ergebnis in Data Extension 3 so aussehen:

EmailAddress
SubscriberKey
FirstName
LastName
example@example.de
ABCDE12345
Max
Mustermann
VWXYZ67890
beispiel@beispiel.de
‍Musterfrau

Achten Sie daher darauf, dass in allen Abfragen die Felder in derselben Reihenfolge abgefragt werden, um das gewünschte Ergebnis zu erzielen.

UNION versus UNION ALL

Der Vollständigkeit halber möchten wir noch den Unterschied zwischen UNION und UNION ALL ergänzen. Beide Methoden dienen der Kombination von Ergebnissen aus mehreren Abfragen. Der entscheidende Unterschied besteht allerdings darin, dass UNION, wie bereits erwähnt, doppelte Ergebnisse entfernt, während UNION ALL alle Werte, einschließlich der Duplikate, anzeigt.

Wir wissen, dass SQL in Salesforce Marketing Cloud nicht immer einfach zu handhaben ist. Es kommt oft auf kleine, aber entscheidende Details, wie eben die richtige Zeitzone oder die korrekte Reihenfolge der Abfragen an. Diese Feinheiten können den Unterschied zwischen einer erfolgreichen und einer fehlerhaften Datenverarbeitung ausmachen. Sollten Sie auf Probleme stoßen oder Unterstützung benötigen, zögern Sie nicht, uns als Experten zu Rate zu ziehen. Wir stehen Ihnen jederzeit gerne zur Seite, sei es bei Herausforderungen mit SQL oder bei anderen Themen rund um Salesforce Marketing Cloud.

Diesen Artikel jetzt teilen
Link
Blog

Noch mehr über Salesforce Marketing Cloud

salesforce-marketing-cloud
Alle Kategorien

Salesforce Marketing Cloud - Warum Einstein Engagement Scoring allein nicht ausreicht

Erfahren Sie alles über die Vorteile und Grenzen des Einstein Engagement Scoring und wann maßgeschneiderte Scoring-Modelle vorteilhaft sind.

salesforce-marketing-cloud
Alle Kategorien

Salesforce Marketing Cloud Release Highlights Winter '25

Salesforce hat sein Marketing Cloud Release für den Winter 2025 angekündigt, das eine Reihe interessanter Neuerungen mit sich bringt. Wir geben einen Überblick über die wichtigsten Highlights.

salesforce-marketing-cloud
Alle Kategorien

Salesforce Marketing Cloud - SQL Besonderheiten & Tipps Teil 1

Teil1: Die Verwendung von SQL in Salesforce Marketing Cloud bietet leistungsstarke Möglichkeiten zur Datenverarbeitung und -analyse, bringt jedoch auch einige Marketing Cloud spezifische Besonderheiten mit sich, die User kennen sollten.

salesforce-marketing-cloud
Alle Kategorien

Salesforce Marketing Cloud Content Builder-Vorlagen

Die Investition in maßgeschneiderte Templates für Salesforce Marketing Cloud Content Builder lohnt sich. Das Ergebnis sind einfach zu bedienende, CI-konforme, konsistente E-Mails, die in allen gängigen E-Mail-Clients korrekt dargestellt werden und langfristig Zeit und Kosten sparen.

salesforce-marketing-cloud
Alle Kategorien

Salesforce Marketing Cloud Feature Friday: SFMC Companion

Unsere Salesforce Marketing Cloud Experten stellen ein nützliches Add-On für die alltägliche Arbeit in Marketing Cloud vor, die für mehr Übersichtlichkeit und mehr Effizienz sorgt.

salesforce-marketing-cloud
Alle Kategorien

Salesforce Marketing Cloud Release Highlights Winter '23

Salesforce hat sein Marketing Cloud Release für den Winter 2023 angekündigt, das eine Reihe interessanter Neuerungen mit sich bringt. Wir geben einen Überblick über die wichtigsten Highlights.

salesforce-marketing-cloud
Alle Kategorien

Salesforce Marketing Cloud - Marketing Cloud Release Februar 2022

Am 19. Februar geht das Frühlings-Release 2022 der Salesforce Marketing Cloud live. Unsere Release-Highlights haben wir unserem Artikel einmal kompakt zusammengefasst.

salesforce-marketing-cloud
Alle Kategorien

Salesforce Marketing Cloud - Datorama Reports vs. Datorama Reports Advanced

Lohnt sich ein kostenpflichtiges Upgrade auf Datorama Reports Advanced? Eine Übersicht der wichtigsten Funktionalitäten.

salesforce-marketing-cloud
Alle Kategorien

Salesforce Marketing Cloud - Deployments mit Package Manager und Deployment Manager

Wie helfen Package Manager und Deployment Manager beim Rollout standardisierter Prozesse in Marketing Cloud?