গোপনীয়তার কারণে, আপনি ADH-এ কোন 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 | হ্যাঁ |
বিশ্লেষণাত্মক ফাংশন
সমস্ত বিশ্লেষণাত্মক ফাংশন সীমাবদ্ধ.
ব্যবহারকারী-স্তরের সমষ্টি
আমরা 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
ব্যবহারকারীর তালিকার প্রশ্ন
ব্যবহারকারীর তালিকার প্রশ্নে, সমষ্টিগত ফাংশন অনুমোদিত, এবং বিশ্লেষণাত্মক ফাংশন সমর্থিত নয়।