طلبات البحث الأساسية لتصدير بيانات أحداث "إحصاءات Google 4"

تنطبق نماذج طلبات البحث في هذه الصفحة على بيانات تصدير أحداث BigQuery في "إحصاءات Google 4". اطّلِع على كتاب الطبخ في BigQuery لبرنامج Universal Analytics إذا كنت تبحث عن المورد نفسه لخدمة Universal Analytics.

تستخدم جميع الاستعلامات المدرجة هنا مجموعات بيانات نموذجية ومن المفترض أن ينتج عنها نتائج صالحة. لاستخدام بيانات تصدير الأحداث في BigQuery لموقعك على "إحصاءات Google"، ابحث عن التعليق -- Replace table في كل طلب بحث واستبدل نموذج رقم تعريف مجموعة البيانات. يمكنك العثور على رقم تعريف مجموعة البيانات من خلال الانتقال إلى مشروع BigQuery Export في واجهة مستخدم BigQuery. على سبيل المثال، إذا كان رقم تعريف مجموعات بيانات BigQuery Export هو my- first-gcp-project:analytics_28239234، استبدِل ما يلي:

  -- Replace table
  `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`

مع:

  -- Replace table
  `my-first-gcp-project.analytics_28239234.events_*`

طلب بحث في نطاق زمني محدّد

للاستعلام عن نطاق زمني محدّد من مجموعة بيانات تصدير أحداث BigQuery، استخدِم العمود الزائف _TABLE_MINUTES في عبارة WHERE في طلب البحث. لمزيد من المعلومات، يمكنك الاطّلاع على فلترة الجداول المحدّدة باستخدام _TABLE_ADDRESS.

على سبيل المثال، يحسب طلب البحث التالي الأحداث الفريدة حسب التاريخ وحسب اسم الحدث لفترة محدّدة من الأيام والأحداث المحدّدة:

-- Example: Query a specific date range for selected events.
--
-- Counts unique events by date and by event name for a specifc period of days and
-- selected events(page_view, session_start, and purchase).

SELECT
  event_date,
  event_name,
  COUNT(*) AS event_count
FROM
  -- Replace table name.
  `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`
WHERE
  event_name IN ('page_view', 'session_start', 'purchase')
  -- Replace date range.
  AND _TABLE_SUFFIX BETWEEN '20201201' AND '20201202'
GROUP BY 1, 2;

عدد المستخدمين وعدد المستخدمين الجدد

  • وللحصول على إجمالي عدد المستخدمين، احسب عدد user_id المميزة. ومع ذلك، إذا لم يُرجع عميل "إحصاءات Google" user_id مع كل نتيجة أو إذا لم تكن متأكدًا، احسب عدد user_pseudo_id المميزة.
  • بالنسبة إلى المستخدمين الجدد، يمكنك اتّباع طريقة العدّ نفسها الموضّحة أعلاه، ولكن مع قيم event_name التالية:
-- Example: Get 'Total User' count and 'New User' count.

WITH
  UserInfo AS (
    SELECT
      user_pseudo_id,
      MAX(IF(event_name IN ('first_visit', 'first_open'), 1, 0)) AS is_new_user
    -- Replace table name.
    FROM `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`
    -- Replace date range.
    WHERE _TABLE_SUFFIX BETWEEN '20201101' AND '20201130'
    GROUP BY 1
  )
SELECT
  COUNT(*) AS user_count,
  SUM(is_new_user) AS new_user_count
FROM UserInfo;

متوسط عدد العمليات لكل مشترٍ

يوضح الاستعلام التالي متوسط عدد المعاملات لكل مشترٍ.

-- Example: Average number of transactions per purchaser.

SELECT
  COUNT(*) / COUNT(DISTINCT user_pseudo_id) AS avg_transaction_per_purchaser
FROM
  -- Replace table name.
  `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`
WHERE
  event_name IN ('in_app_purchase', 'purchase')
  -- Replace date range.
  AND _TABLE_SUFFIX BETWEEN '20201201' AND '20201231';

قيم اسم حدث معيّن

يعرض طلب البحث التالي event_timestamp لجميع أحداث purchase وقيم مَعلمات الأحداث المرتبطة بها:

-- Example: Query values for a specific event name.
--
-- Queries the individual timestamps and values for all 'purchase' events.

SELECT
  event_timestamp,
  (
    SELECT COALESCE(value.int_value, value.float_value, value.double_value)
    FROM UNNEST(event_params)
    WHERE key = 'value'
  ) AS event_value
FROM
  -- Replace table name.
  `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`
WHERE
  event_name = 'purchase'
  -- Replace date range.
  AND _TABLE_SUFFIX BETWEEN '20201201' AND '20201202';

يمكن تعديل الطلب السابق لعرض إجمالي قيم مَعلمات الأحداث بدلاً من قائمة:

-- Example: Query total value for a specific event name.
--
-- Queries the total event value for all 'purchase' events.

SELECT
  SUM(
    (
      SELECT COALESCE(value.int_value, value.float_value, value.double_value)
      FROM UNNEST(event_params)
      WHERE key = 'value'
    ))
    AS event_value
FROM
  -- Replace table name.
  `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`
WHERE
  event_name = 'purchase'
  -- Replace date range.
  AND _TABLE_SUFFIX BETWEEN '20201201' AND '20201202';

أهم 10 سلع تمّت إضافتها إلى سلّة التسوّق

يعرض طلب البحث التالي أهم 10 سلع تمت إضافتها إلى سلة التسوّق من خلال أكبر عدد من المستخدمين.

-- Example: Top 10 items added to cart by most users.

SELECT
  item_id,
  item_name,
  COUNT(DISTINCT user_pseudo_id) AS user_count
FROM
  -- Replace table name.
  `bigquery-public-data.ga4_obfuscated_web_ecommerce.events_*`, UNNEST(items)
WHERE
  -- Replace date range.
  _TABLE_SUFFIX BETWEEN '20201101' AND '20210131'
  AND event_name IN ('add_to_cart')
GROUP BY
  1, 2
ORDER BY
  user_count DESC
LIMIT 10;

متوسط عدد مشاهدات الصفحة حسب نوع المشتري (المشترون مقابل غير المشترين)

يُظهر طلب البحث التالي متوسط عدد نوع المشترين مرّات مشاهدة الصفحة (المشترون مقابل غير المشترين) للمستخدمين:

-- Example: Average number of pageviews by purchaser type.

WITH
  UserInfo AS (
    SELECT
      user_pseudo_id,
      COUNTIF(event_name = 'page_view') AS page_view_count,
      COUNTIF(event_name IN ('in_app_purchase', 'purchase')) AS purchase_event_count
    -- Replace table name.
    FROM `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`
    -- Replace date range.
    WHERE _TABLE_SUFFIX BETWEEN '20201201' AND '20201202'
    GROUP BY 1
  )
SELECT
  (purchase_event_count > 0) AS purchaser,
  COUNT(*) AS user_count,
  SUM(page_view_count) AS total_page_views,
  SUM(page_view_count) / COUNT(*) AS avg_page_views,
FROM UserInfo
GROUP BY 1;

تسلسل مرّات مشاهدة الصفحة على الويب

يوضح طلب البحث التالي تسلسل مشاهدات الصفحة التي أجراها المستخدمون خلال الجلسات الفريدة:

-- Example: Sequence of pageviews.

SELECT
  user_pseudo_id,
  event_timestamp,
  (SELECT value.int_value FROM UNNEST(event_params) WHERE key = 'ga_session_id') AS ga_session_id,
  (SELECT value.string_value FROM UNNEST(event_params) WHERE key = 'page_location')
    AS page_location,
  (SELECT value.string_value FROM UNNEST(event_params) WHERE key = 'page_title') AS page_title
FROM
  -- Replace table name.
  `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`
WHERE
  event_name = 'page_view'
  -- Replace date range.
  AND _TABLE_SUFFIX BETWEEN '20201201' AND '20201202'
ORDER BY
  user_pseudo_id,
  ga_session_id,
  event_timestamp ASC;

قائمة مَعلمات الأحداث

يسرد طلب البحث التالي جميع مَعلمات الأحداث التي تظهر في مجموعة بياناتك:

-- Example: List all available event parameters and count their occurrences.

SELECT
  EP.key AS event_param_key,
  COUNT(*) AS occurrences
FROM
  -- Replace table name.
  `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`, UNNEST(event_params) AS EP
WHERE
  -- Replace date range.
  _TABLE_SUFFIX BETWEEN '20201201' AND '20201202'
GROUP BY
  event_param_key
ORDER BY
  event_param_key ASC;

الانضمام من خلال "إعلانات Google"

لاسترداد بيانات "إعلانات Google" الإضافية لأحداث "إحصاءات Google 4"، يجب إعداد خدمة "نقل البيانات في BigQuery" في "إعلانات Google"، ثم الانضمام إلى collected_traffic_source.gclid من بيانات أحداث "إحصاءات Google 4" إلى الحقل gclid في ads_ClickStats_customer_id بعد عملية النقل في "إعلانات Google".

ضَع في اعتبارك أنّ عملية تصدير بيانات الأحداث في "إحصاءات Google 4" تنشئ جدولاً لكلّ يوم، بينما تؤدي عملية النقل في "إعلانات Google" إلى تعبئة جدول ads_ClickStats_customer_id واحد لكلّ عميل.