基於隱私權考量,我們會限制您在廣告資料中心可使用的 SQL 函式。
純量函式
所有純量函式皆可使用,下列除外:
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
分析查詢
對於匯總分析查詢,我們會限制函式合併多位使用者的資料。處理單一使用者的資料時,所有匯總和分析函式皆可使用。詳情請參閱下方的使用者層級匯總。
匯總函式
函式 | 是否允許? |
---|---|
ANY_VALUE |
是 |
APPROX_QUANTILES |
否 |
APPROX_TOP_COUNT |
否 |
APPROX_TOP_SUM |
否 |
ARRAY_AGG |
否 |
ARRAY_CONCAT_AGG |
否 |
AVG |
是 |
BIT_AND |
否 |
BIT_OR |
否 |
BIT_XOR |
否 |
COUNT |
可 |
COUNTIF |
是 |
LOGICAL_AND |
是 |
LOGICAL_OR |
是 |
MAX |
是 |
MIN |
是 |
SUM |
是 |
CORR |
是 |
COVAR_POP |
是 |
COVAR_SAMP |
是 |
STDDEV_POP |
是 |
STDDEV_SAMP |
是 |
STDDEV |
是 |
STRING_AGG |
否 |
VAR_POP |
可 |
VAR_SAMP |
是 |
VARIANCE |
是 |
APPROX_COUNT_DISTINCT |
是 |
分析函式
我們限制所有分析函式。
HyperLogLog++ 函式
廣告資料中心支援 HyperLogLog++ (HLL++) 函式,但這些函式使用的專屬資料類型有更多限制。
支援類型
類型 | 說明 |
---|---|
ADH.USER_HLL |
由 ADH.USER_ID 類型的值匯總而成的數據架構 |
ADH.BYTE_HLL |
由任何非 ID 類型的值匯總而成的數據架構 |
這些類型支援合併及擷取基數估計值,但不支援直接轉換為任何其他類型。廣告資料中心無法直接匯出這些資料,必須使用 HLL_COUNT.EXTRACT
或 HLL_COUNT.MERGE
,才能取得查詢輸出結果。
請注意,HLL 數據架構支援多層匯總的基數預估作業,但在廣告資料中心,這類數據架構在單層匯總中的實際改善成效,不會比 COUNT(DISTINCT)
更好。
支援的函式
函式名稱 | 支援類型 | 傳回類型 |
---|---|---|
HLL_COUNT.EXTRACT
|
ADH.USER_HLL 、ADH.BYTE_HLL |
INT64
|
HLL_COUNT.INIT
|
所有標準支援類型、
ADH.USER_ID |
ADH.USER_ID 輸入類型為 ADH.USER_HLL ,其他為 ADH.BYTE_HLL |
HLL_COUNT.INITNT.MERGE
|
ADH.USER_HLL 、ADH.BYTE_HLL |
INT64
|
HLL_COUNT.MERGE_PARTIAL
|
ADH.USER_HLL 、ADH.BYTE_HLL |
與輸入類型相同 |
限制
雜訊插入:使用雜訊插入執行查詢時,不支援 HLL++ 函式。
使用者層級匯總
我們允許在 SELECT
陳述式中,使用依據 user_id
分組或分區的所有匯總和分析函式。為此,先前的彙整作業必須加入 user_id
,明確表示資料儲存於使用者層級,如下方的例子所示:
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)
使用者名單查詢
在使用者名單查詢中可以使用匯總函式,但不支援分析函式。