Duplikate mit union() entfernen
Quizfrage
Was liefert union() mit zweimal demselben Array?
Auflösung
- A) Das Array ohne doppelte EinträgeRichtig. union() gibt jeden Wert nur einmal zurück, also wirkt union(x, x) wie DISTINCT.
- B) Das Array zweimal hintereinanderFalsch. Das wäre ein einfaches Aneinanderhängen. union() entfernt dabei die Duplikate.
- C) Nur die Einträge, die doppelt vorkommenFalsch. union() vereinigt die Arrays und behält jeden Wert einmal, auch die, die nur einmal vorkommen.
Worum es geht
Wenn du Daten aus zwei Quellen zusammenführst, landen schnell doppelte Einträge im Ergebnis. Die Funktion union() verbindet zwei Arrays und gibt jeden Wert nur einmal zurück. Daraus folgt ein einfacher Trick: Übergibst du dasselbe Array zweimal, also union(x, x), bekommst du das Array ohne Duplikate zurück, wie DISTINCT in einer Datenbank. Das funktioniert mit einfachen Werten und mit Objekten. Danach grenzt du das Ergebnis mit Filter array auf die Einträge ein, die du brauchst. Zwei eingebaute Schritte ersetzen so eine Schleife mit Bedingung und Variable. Willst du die Duplikate behalten, ist union() die falsche Wahl.
Der Ausdruck aus dem Tipp
union(x, x)Wann einsetzen, wann nicht
Einsetzen
Wenn du Listen zusammenführst oder ein Array bereinigen willst, bevor du weiterarbeitest.
Lieber nicht
Wenn doppelte Einträge erhalten bleiben müssen, zum Beispiel bei Buchungen mit gleichem Betrag.
Häufigster Fehler
Duplikate in einer Schleife mit Bedingung und Variable entfernen, obwohl ein einziger Ausdruck reicht.
Lizenz
Standard Läuft ohne Premium-Connector, also mit der Lizenz aus Microsoft 365. Beleg bei Microsoft Learn: Power Automate licensing FAQ. Für deinen ganzen Flow: Lizenz-Check.
Teilen
Kurzadresse: powerautomate.ninja/7
Quelle: PowerPlatformTip #7, Microsoft Learn: Reference for functions in workflow expressions.