Zulässige SQL-Funktionen

Aus Datenschutzgründen beschränken wir die SQL-Funktionen, die Sie in Ads Data Hub verwenden können.

Skalarfunktionen

Alle Skalarfunktionen mit Ausnahme der Folgenden sind zulässig:

  • ERROR
  • ST_AREA
  • ST_ASBINARY
  • ST_ASGEOJSON
  • ST_ASTEXT
  • ST_BOUNDARY
  • ST_CENTROID
  • ST_CENTROID_AGG
  • ST_CLOSESTPOINT
  • ST_CLUSTERDBSCAN
  • ST_CONTAINS
  • ST_CONVEXHULL
  • ST_COVEREDBY
  • ST_COVERS
  • ST_DIFFERENCE
  • ST_DIMENSION
  • ST_DISJOINT
  • ST_DISTANCE
  • ST_DUMP
  • ST_DWITHIN
  • ST_EQUALS
  • ST_GEOGFROMGEOJSON
  • ST_GEOGFROMTEXT
  • ST_GEOGFROMWKB
  • ST_GEOGPOINT
  • ST_GEOGPOINTFROMGEOHASH
  • ST_GEOHASH
  • ST_INTERSECTION
  • ST_INTERSECTS
  • ST_INTERSECTSBOX
  • ST_ISCOLLECTION
  • ST_ISEMPTY
  • ST_LENGTH
  • ST_MAKELINE
  • ST_MAKEPOLYGON
  • ST_MAKEPOLYGONORIENTED
  • ST_MAXDISTANCE
  • ST_NPOINTS
  • ST_NUMPOINTS
  • ST_PERIMETER
  • ST_SIMPLIFY
  • ST_SNAPTOGRID
  • ST_TOUCHES
  • ST_UNION
  • ST_UNION_AGG
  • ST_WITHIN
  • ST_X
  • ST_Y

Analyseabfragen

Bei aggregierten Analyseabfragen schränken wir Funktionen ein, bei denen Daten von mehreren Nutzern kombiniert werden. Wenn Daten eines einzelnen Nutzers verarbeitet werden, sind alle Aggregat- und Analysefunktionen zulässig. Weitere Informationen finden Sie unten.

Aggregatfunktionen

Funktion Zulässig?
ANY_VALUE Ja
APPROX_QUANTILES Nein
APPROX_TOP_COUNT Nein
APPROX_TOP_SUM Nein
ARRAY_AGG Nein
ARRAY_CONCAT_AGG Nein
AVG Ja
BIT_AND Nein
BIT_OR Nein
BIT_XOR Nein
COUNT Ja
COUNTIF Ja
LOGICAL_AND Ja
LOGICAL_OR Ja
MAX Ja
MIN Ja
SUM Ja
CORR Ja
COVAR_POP Ja
COVAR_SAMP Ja
STDDEV_POP Ja
STDDEV_SAMP Ja
STDDEV Ja
STRING_AGG Nein
VAR_POP Ja
VAR_SAMP Ja
VARIANCE Ja
APPROX_COUNT_DISTINCT Ja

Analysefunktionen

Alle Analysefunktionen sind eingeschränkt.

HyperLogLog++ Funktionen

Ads Data Hub unterstützt HyperLogLog++ (HLL++) Funktionen. Dafür werden jedoch spezielle Datentypen mit mehr Einschränkungen verwendet.

Unterstützte Typen

Typ Beschreibung
ADH.USER_HLL Skizzen, die aus Werten des Typs ADH.USER_ID aggregiert werden
ADH.BYTE_HLL Skizzen, die aus Werten aggregiert werden, die keine IDs sind

Diese Typen unterstützen das Zusammenführen und Extrahieren zu Kardinalitätsschätzungen, aber nicht das direkte Konvertieren in einen anderen Typ. Sie können nicht direkt aus Ads Data Hub exportiert werden. Daher muss HLL_COUNT.EXTRACT oder HLL_COUNT.MERGE verwendet werden, bevor das Ergebnis der Abfrage ausgegeben wird.

HLL-Skizzen ermöglichen eine Kardinalitätsschätzung über mehrere Aggregationsebenen hinweg, bieten in Ads Data Hub auf Einzelebene jedoch keine wesentliche Leistungssteigerung gegenüber COUNT(DISTINCT).

Unterstützte Funktionen

Funktionsname Unterstützte Typen Rückgabetyp
HLL_COUNT.EXTRACT ADH.USER_HLL, ADH.BYTE_HLL INT64
HLL_COUNT.INIT Alle standardmäßig unterstützten Typen, ADH.USER_ID ADH.USER_HLL für ADH.USER_ID-Eingabe, sonst ADH.BYTE_HLL
HLL_COUNT.INITNT.MERGE ADH.USER_HLL, ADH.BYTE_HLL INT64
HLL_COUNT.MERGE_PARTIAL ADH.USER_HLL, ADH.BYTE_HLL Gleicher Typ wie Eingabe

Einschränkungen

Noise Injection: HLL++ Funktionen werden bei Abfragen mit Noise Injection (Einfügen von Rauschen) nicht unterstützt.

Aggregationen auf Nutzerebene

Alle Aggregat- und Analysefunktionen in SELECT-Anweisungen sind zulässig, wenn sie nach user_id gruppiert oder segmentiert werden. Dazu muss aus vorhergehenden Joins deutlich werden, dass die Daten auf Nutzerebene mit user_id zusammengeführt werden, wie in diesem Beispiel:

CREATE TABLE paths AS (
SELECT ARRAY_AGG(campaign_id ORDER BY query_id.time_usec) AS path
FROM
  adh.google_ads_impressions
  LEFT JOIN adh.google_ads_clicks
    USING(query_id, user_id)
GROUP BY user_id)

Abfragen von Nutzerlisten

Bei Abfragen von Nutzerlisten sind Aggregatfunktionen zulässig. Analysefunktionen sind nicht verfügbar.