Fungsi SQL yang diizinkan

Untuk alasan privasi, kami membatasi fungsi SQL yang dapat Anda gunakan di ADH.

Fungsi skalar

Semua fungsi skalar kecuali fungsi berikut diizinkan:

  • 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

Kueri analisis

Untuk kueri analisis gabungan, kami membatasi fungsi yang menggabungkan data dari beberapa pengguna. Semua fungsi gabungan dan analisis diizinkan saat memproses data satu pengguna. Lihat Agregasi tingkat pengguna untuk mengetahui detailnya.

Fungsi agregat

Fungsi berikut diizinkan untuk agregasi di seluruh pengguna:

  • SUM
  • COUNT
  • COUNTIF
  • APPROX_COUNT_DISTINCT
  • AVG

Dalam mode privasi pemeriksaan perbedaan, fungsi berikut juga diizinkan:

  • ANY_VALUE
  • LOGICAL_AND
  • LOGICAL_OR
  • MAX
  • MIN
  • CORR
  • COVAR_POP
  • COVAR_SAMP
  • STDDEV_POP
  • STDDEV_SAMP
  • STDDEV
  • VAR_POP
  • VAR_SAMP
  • VARIANCE

Lihat penyisipan derau untuk mengetahui detail tentang fungsi dan fitur agregat khusus derau tambahan.

Fungsi analisis

Semua fungsi analisis dibatasi.

Fungsi HyperLogLog++

Ads Data Hub mendukung fungsi HyperLogLog++ (HLL++). Namun, mereka menggunakan jenis data khusus dengan lebih banyak batasan.

Jenis yang didukung

Jenis Deskripsi
ADH.USER_HLL Sketsa yang digabungkan dari nilai jenis ADH.USER_ID
ADH.BYTE_HLL Sketsa yang digabungkan dari nilai jenis non-ID apa pun

Jenis ini mendukung penggabungan dan ekstraksi ke estimasi kardinalitas, dan tidak mendukung konversi langsung ke jenis lainnya. Data tersebut tidak dapat diekspor langsung dari Ads Data Hub, sehingga harus menggunakan HLL_COUNT.EXTRACT atau HLL_COUNT.MERGE sebelum mencapai output kueri.

Sketsa HLL memungkinkan estimasi kardinalitas di beberapa lapisan agregasi, tetapi perhatikan bahwa di Ads Data Hub, sketsa HLL tidak memberikan peningkatan performa yang signifikan dibandingkan COUNT(DISTINCT) dalam satu lapisan.

Fungsi yang didukung

Nama fungsi Jenis yang didukung Jenis nilai yang ditampilkan
HLL_COUNT.EXTRACT ADH.USER_HLL, ADH.BYTE_HLL INT64
HLL_COUNT.INIT Semua jenis yang didukung standar, ADH.USER_ID ADH.USER_HLL untuk input ADH.USER_ID, jika tidak, ADH.BYTE_HLL
HLL_COUNT.INITNT.MERGE ADH.USER_HLL, ADH.BYTE_HLL INT64
HLL_COUNT.MERGE_PARTIAL ADH.USER_HLL, ADH.BYTE_HLL Sama seperti jenis input

Batasan

Penyisipan derau: Fungsi HLL++ tidak didukung saat menjalankan kueri menggunakan penyisipan derau.

Agregasi tingkat pengguna

Kami mengizinkan semua fungsi gabungan dan analisis dalam pernyataan SELECT yang mengelompokkan atau mempartisi menurut user_id. Agar ini berfungsi, gabungan sebelumnya harus memperjelas bahwa data disimpan di tingkat pengguna dengan menggabungkan user_id, seperti dalam contoh ini:

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_creative_conversions
    USING(query_id, user_id)
GROUP BY user_id;

Kueri daftar pengguna

Dalam kueri daftar pengguna, fungsi agregat diizinkan, dan fungsi analisis tidak didukung.