Kategorie: Arrays

ARRAY_INTERSECT

ARRAY_INTERSECT liefert ein neues Array mit den Elementen, die in beiden Eingabe-Arrays vorkommen.

Syntax

ARRAY_INTERSECT(array1, array2)

Besonderheiten in AMC

  • Die Schwestern ARRAY_UNION (alle Elemente ohne Duplikate) und ARRAY_COMPLEMENT (Elemente nur im ersten Array) lösen verwandte Mengenaufgaben.
  • In Verbindung mit CARDINALITY lässt sich die Größe der Schnittmenge zählen.

Beispiel

Nutzer, bei denen derselbe Kampagnenname in Sponsored Ads und in der DSP vorkommt.

WITH per_user AS (
  SELECT
    user_id,
    COLLECT(DISTINCT campaign) AS paid_campaigns
  FROM
    sponsored_ads_traffic
  GROUP BY
    1
),
dsp AS (
  SELECT
    user_id,
    COLLECT(DISTINCT campaign) AS dsp_campaigns
  FROM
    dsp_impressions
  GROUP BY
    1
)
SELECT
  COUNT(DISTINCT p.user_id) AS users_in_both
FROM
  per_user p
  JOIN dsp d ON p.user_id = d.user_id
WHERE
  CARDINALITY(ARRAY_INTERSECT(p.paid_campaigns, d.dsp_campaigns)) > 0

Gegen das AMC-Schema geprüft, nicht auf einer AMC-Instanz ausgeführt.

Verwandte Funktionen: ARRAY_CONTAINS, CARDINALITY, COLLECT

Quelle: advertising.amazon.com (abgerufen am 2026-10-09)