لأسباب تتعلق بالخصوصية، نحظر وظائف SQL التي يمكنك استخدامها في Ads Data Hub.
الدوال العددية
يُسمح بجميع الدوال العددية باستثناء ما يلي:
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 |
نعم |
الدوال التحليلية
جميع الوظائف التحليلية محظورة.
التجميعات على مستوى المستخدم
نحن نسمح بجميع الدوال المجمَّعة والتحليلية في عبارات SELECT
التي تجمع البيانات أو تقسِّمها حسب user_id
. لتنفيذ ذلك، يجب أن يوضّح أي دمج سابق أن البيانات يتم الاحتفاظ بها على مستوى المستخدم من خلال الانضمام على user_id
، كما هو موضّح في المثال التالي:
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
إذا لم يكن ذلك ممكنًا لأن أرقام التعريف منفصلة ولم يتم الانضمام إليها، يجب أن يتم في طلب البحث تجميع أو تقسيم حسب جميع أرقام التعريف المستقلة، كما في هذا المثال:
SELECT
a.user_id AS user_a,
b.user_id AS user_b,
ARRAY_AGG(DISTINCT campaign_id) campaigns
FROM
adh.google_ads_impressions a
JOIN adh.google_ads_impressions b USING (campaign_id)
GROUP BY 1, 2
طلبات قائمة المستخدمين
في طلبات قائمة المستخدمين، يُسمح بالوظائف المجمّعة، ولا تتوفّر الدوال التحليلية.