التقسيم

يتوفّر التصنيف إلى شرائح في واجهة مستخدم "إعلانات Google" كقائمة منفصلة، ويمكن تنفيذه في Google Ads API بمجرد إضافة الحقل المناسب إلى أحد طلبات البحث. على سبيل المثال، تؤدي إضافة segments.device إلى طلب بحث إلى إنشاء تقرير يحتوي على صف لكل مجموعة من الأجهزة والمورد المحدد في عبارة FROM، وتقسيم القيم الإحصائية (مرات الظهور والنقرات والإحالات الناجحة وما إلى ذلك) بينهما.

في واجهة مستخدم "إعلانات Google"، لا يمكن استخدام سوى شريحة واحدة في كل مرة، ومع واجهة برمجة التطبيقات، يمكنك تحديد شرائح متعددة في طلب البحث نفسه.

SELECT
  campaign.name,
  campaign.status,
  segments.device,
  metrics.impressions
FROM campaign

ستبدو النتائج من إرسال طلب البحث هذا إلى GoogleAdsService.SearchStream على النحو التالي: سلسلة JSON هذه:

{
  "results":[
    {
      "campaign":{
        "resourceName":"customers/1234567890/campaigns/111111111",
        "name":"Test campaign",
        "status":"ENABLED"
      },
      "metrics":{
        "impressions":"10922"
      },
      "segments":{
        "device":"MOBILE"
      }
    },
    {
      "campaign":{
        "resourceName":"customers/1234567890/campaigns/111111111",
        "name":"Test campaign",
        "status":"ENABLED"
      },
      "metrics":{
        "impressions":"28297"
      },
      "segments":{
        "device":"DESKTOP"
      }
    },
    ...
  ]
}

لاحظ أنه في نموذج نتيجة أعلاه، تكون السمات للكائن الأول والثاني بما في ذلك اسم المورد هي نفسها. ويتم تقسيم مرات الظهور حسب الجهاز، وبالتالي يمكن عرض عنصرَين أو أكثر للحملة نفسها.

التصنيف الضمني

يتم تقسيم كل تقرير بشكل مبدئي حسب المورد المحدّد في العبارة FROM. يتم عرض حقلResource_name للمورد في عبارة FROM ويتم تقسيم المقاييس حسب هذا الحقل، حتى إذا لم يكن حقلResource_name مضمَّنًا بشكل صريح في الاستعلام. على سبيل المثال، عند تحديد ad_group كمورد في البند FROM، سيتم تلقائيًا عرض ad_group.resource_name وسيتم تقسيم المقاييس ضمنيًا إلى شرائح بناءً عليه على مستوى المجموعة الإعلانية.

لذلك بالنسبة لهذا الاستعلام،

SELECT metrics.impressions
FROM ad_group

فستحصل على سلسلة JSON مثل هذه:

{
  "results":[
    {
      "adGroup":{
        "resourceName":"customers/1234567890/adGroups/2222222222"
      },
      "metrics":{
        "impressions":"237"
      }
    },
    {
      "adGroup":{
        "resourceName":"customers/1234567890/adGroups/33333333333"
      },
      "metrics":{
        "impressions":"15"
      }
    },
    {
      "adGroup":{
        "resourceName":"customers/1234567890/adGroups/44444444444"
      },
      "metrics":{
        "impressions":"0"
      }
    }
  ]
}

يُرجى العِلم أنّه يتم دائمًا عرض الحقل resource_name في adGroup لأنّه تم تحديد ad_group كمورد في البند FROM.

حقول شرائح يمكن اختيارها

لا يمكن اختيار كل حقول المقطع لمورد معيَّن في عبارة FROM. على سبيل المثال، سنواصل الاستعلام من المورد ad_group. ليكون حقل الشريحة قابلاً للاختيار من مورد المجموعة الإعلانية، يجب أن يتوفر هذا الحقل في قائمة Segments للمجموعة الإعلانية. إنّ القائمة Segments هي الجزء الأصفر من جدول الحقول المتاحة في صفحة البيانات الوصفية لمورد ad_group.

تقسيم الموارد

عند الاختيار من بعض الموارد، قد يتوفر لديك خيار ضم الموارد ذات الصلة ضمنيًا من خلال اختيار حقولها بجانب حقول المورد في عبارة FROM. يمكن العثور على هذه الموارد ذات الصلة في قائمة "Attributed Resources" على المورد في صفحة البيانات الوصفية في البند FROM. في حالة المورد ad_group، سيظهر لك أنّه يمكنك أيضًا اختيار حقول من المرجع campaign. سيتم تلقائيًا عرض حقل device_name في أي Attributed Resources يتضمّن حقلاً واحدًا على الأقل في عبارة SELECT، حتى إذا لم يتم تضمين الحقلresource_name بشكل صريح في الاستعلام.

على غرار اختيار Attributed Resource حقل، يمكنك أيضًا اختيار Segmenting Resource حقل. إذا تضمّن مورد معيّن قائمة Segmenting Resources على صفحة بياناته الوصفية، سيؤدي اختيار حقول من أحد هذه الموارد المدرَجة إلى تقسيم طلب البحث أكثر من خلال سمة asset_name المعروضة للسمة Segmenting Resource. على سبيل المثال، ستجد أن المورد campaign قد تم إدراجه على أنه Segmenting Resource لمورد campaign_budget. لن يؤدّي اختيار أيّ حقل حملة، مثل campaign.name، من مورد campaign_Budget، إلى عرض حقل campaign.name فقط، بل سيؤدي إلى عرض الحقل campaign.resource_name وتقسيمه.

إمكانية الاختيار بين الشرائح والمقاييس

قد لا يكون حقل شريحة معيّن متوافقًا مع بعض حقول الشرائح الأخرى أو مع بعض حقول المقاييس. لتحديد حقول الشرائح المتوافقة مع بعضها البعض، يمكنك مراجعة قائمة selectable_with للأقسام في البند SELECT.

في حال استخدام المورد ad_group، يتوفّر أكثر من 50 شريحة يمكنك اختيارها. في المقابل، تتضمّن قائمة selectable_with للسمة segments.hotel_check_in_date مجموعة أصغر بكثير من الشرائح المتوافقة. وهذا يعني أنّك إذا أضفت الحقل segments.hotel_check_in_date إلى العبارة SELECT، سيتم حصر الأجزاء المتوفّرة التي تبقى لديك للاختيار من بينها عند تقاطع هاتين القائمتَين.

عند إضافة بعض الشرائح، قد تقلّ المقاييس في صف الملخّص
عند إضافة segments.keyword.info.match_type إلى طلب بحث باستخدام FROM ad_group_ad، فإن هذه الشريحة تخبر طلب البحث فقط بالحصول على صفوف البيانات التي تحتوي على كلمات رئيسية، وإزالة أي صف غير مرتبط بكلمة رئيسية. في هذه الحالة، ستكون المقاييس أقل لأنّها قد تستبعد أي مقاييس غير متعلّقة بالكلمات الرئيسية.

قواعد المقاطع في عبارة WHERE

عندما تكون الفقرة في البند WHERE، يجب أن تكون أيضًا في عبارة SELECT. تُستثنى من هذه القاعدة شرائح التاريخ التالية، والمشار إليها باسم شرائح التاريخ الأساسي:

  • segments.date
  • segments.week
  • segments.month
  • segments.quarter
  • segments.year

قواعد حقول قسم البيانات الأساسية

تعمل الأقسام segments.date وsegments.week وsegments.month وsegments.quarter وsegments.year على النحو التالي:

  • يمكن فلترة هذه المقاطع في عبارة WHERE بدون ظهورها في عبارة SELECT.

  • إذا كانت أيّ من هذه الشرائح واردة في البند SELECT، يجب تحديد نطاق زمني محدود مكوّن من شرائح التاريخ الأساسي في البند WHERE (ليس من الضروري أن تكون شرائح التاريخ هي نفسها المحدّدة في SELECT).

أمثلة

غير صالح: بما أنّ السمة segments.date وردت في البند SELECT، عليك تحديد نطاق زمني محدود في الفقرة WHERE للسمتَين segments.date أو segments.week أو segments.month أو segments.quarter أو segments.year.
SELECT
  campaign.name,
  metrics.clicks,
  segments.date
FROM campaign
صالح: يعرض طلب البحث هذا أسماء الحملات والنقرات المتراكمة خلال النطاق الزمني. يُرجى العِلم أنّ علامة segments.date لا تحتاج إلى الظهور في البند SELECT.
SELECT
  campaign.name,
  metrics.clicks
FROM campaign
WHERE segments.date > '2020-01-01'
  AND segments.date < '2020-02-01'
صالح: يعرض طلب البحث هذا أسماء ونقرات مقسمة حسب التاريخ لجميع الأيام في النطاق الزمني.
SELECT
  campaign.name,
  metrics.clicks,
  segments.date
FROM campaign
WHERE segments.date > '2020-01-01'
  AND segments.date < '2020-02-01'
صالح: يعرض طلب البحث هذا أسماء الحملات والنقرات مقسمة حسب الشهر لجميع الأيام في النطاق الزمني.
SELECT
  campaign.name,
  metrics.clicks,
  segments.month
FROM campaign
WHERE segments.date > '2020-01-01'
  AND segments.date < '2020-02-01'
صالح: يعرض طلب البحث هذا أسماء الحملات والنقرات مقسّمة حسب ربع السنة، ثم حسب الشهر لجميع الأشهر في نطاق السنة.
SELECT
  campaign.name,
  metrics.clicks,
  segments.quarter,
  segments.month
FROM campaign
WHERE segments.year > 2015
  AND segments.year < 2020

search_term_view

تجدر الإشارة إلى أنّه بالنسبة إلى مورد search_term_view، يتم أيضًا تقسيمه ضمنيًا حسب المجموعة الإعلانية، وليس فقط عبارة بحث، كما ينعكس ذلك في بنية اسم المورد الذي يتضمّن أيضًا المجموعة الإعلانية. وبالتالي، ستحصل على بعض الصفوف التي يبدو أنّها مكرّرة مع نفس عبارات البحث التي تظهر في نتائجك بينما في الواقع، ستنتمي الصفوف إلى مجموعة إعلانية مختلفة:

{
  "results":[
    {
      "searchTermView":{
        "resourceName":"customers/1234567890/searchTermViews/111111111~2222222222~Z29vZ2xlIHBob3RvcyBpb3M",
        "searchTerm":"google photos"
      },
      "metrics":{
        "impressions":"3"
      },
      "segments":{
        "date":"2015-06-15"
      }
    },
    {
      "searchTermView":{
        "resourceName":"customers/1234567890/searchTermViews/111111111~33333333333~Z29vZ2xlIHBob3RvcyBpb3M",
        "searchTerm":"google photos"
      },
      "metrics":{
        "impressions":"2"
      },
      "segments":{
        "date":"2015-06-15"
      }
    }
  ]
}

على الرغم من أن العنصرين الذين تم عرضهما في هذا المثال يبدوان مكررين، إلا أن أسماء مواردهما مختلفة في الواقع، لا سيما في جزء "المجموعة الإعلانية". وهذا يعني أنّ عبارة البحث "صور Google" تُنسب إلى المجموعتَين الإعلانيتَين (رقم التعريف: 2222222222 و33333333333) في التاريخ نفسه (2015-06-15). وبالتالي، يمكننا أن نستنتج أن واجهة برمجة التطبيقات عملت على النحو المنشود ولم تعرض كائنات مكررة في هذه الحالة.