שאילתות בסיסיות בנושא ייצוא של נתוני אירועים ב-Google Analytics 4

השאילתות לדוגמה שבדף הזה רלוונטיות לנתוני ייצוא האירועים ב-BigQuery עבור Google Analytics 4. אם אתם מחפשים את אותו המשאב ל-Universal Analytics, ראו את ספר המתכונים של BigQuery עבור Universal Analytics.

כל השאילתות שרשומות כאן משתמשות במערכי נתונים לדוגמה, והן אמורות להניב תוצאות חוקיות. כדי להשתמש בנתוני ייצוא האירועים ב-BigQuery מנכס Google Analytics שלכם, צריך לחפש את ההערה -- Replace table בכל שאילתה ולהחליף את מזהה מערך הנתונים לדוגמה. כדי למצוא את מזהה מערך הנתונים, עוברים לממשק המשתמש של BigQuery אל פרויקט הייצוא ב-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_solarmora בקטע WHERE בשאילתה. למידע נוסף, קראו את המאמר סינון הטבלאות שנבחרו באמצעות _TABLE_solarmora.

לדוגמה, השאילתה הבאה סופרת אירועים ייחודיים לפי תאריך ולפי שם אירוע בפרק זמן ספציפי של ימים ובאירועים נבחרים:

-- 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 Analytics לא שולח חזרה 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 Ads

כדי לאחזר נתונים נוספים מ-Google Ads לגבי אירועי GA4, צריך להגדיר את שירות העברת הנתונים ל-BigQuery ב-Google Ads, ואז לצרף את collected_traffic_source.gclid מנתוני האירועים של GA4 לשדה gclid של ads_ClickStats_customer_id מההעברה ב-Google Ads.

חשוב לזכור: כשמייצאים את נתוני האירועים מ-GA4 המערכת יוצרת טבלה לכל יום, וההעברה מ-Google Ads מאכלסת טבלה אחת (ads_ClickStats_customer_id) לכל לקוח.