يتكوّن طلب البحث من عدد من الجمل: SELECT
،
FROM
،
WHERE
،
ORDER BY
،
LIMIT
،
وPARAMETERS
.
تستخدِم الجمل أسماء الحقول وأسماء الموارد وعوامل التشغيل والشروط وعمليات الترتيب التي يتم دمجها في طلب استعلام واحد.
في الأساس، لإنشاء طلب بحث، عليك إجراء ما يلي:
- حدِّد موردًا لاسترداد البيانات منه.
- أضِف حقولاً ومقاييس لتحديد البيانات التي تريد عرضها.
- أضِف شرائح الجمهور لتجميع النتائج.
- أضِف موارد منسوبة لدمج بيانات الموارد ذات الصلة بشكل ضمني.
- يمكنك تصفية النتائج وترتيبها والحد منها.
SELECT
عبارة
الفقرة SELECT
:
- هو عبارة مطلوبة في طلب بحث.
- تُحدِّد مجموعة من الحقول التي سيتم جلبها في الطلب.
- الحصول على قائمة مفصولة بفواصل لحقول الموارد والأعمدة المخصّصة ومتغيّرات Floodlight المخصّصة وحقول الأقسام والمقاييس، وعرض القيم في الردّ.
يوضّح لك مثال طلب البحث هذا كيفية اختيار سمات campaign
المورد:
SELECT
campaign.id,
campaign.name
FROM campaign
أنواع حقول متعددة
يمكنك طلب أنواع حقول مختلفة في الطلب نفسه.
يعرض مثال طلب البحث أدناه طلب بحث واحدًا يتضمّن مجموعة من:
- حقول الموارد:
campaign.id
وcampaign.name
وbidding_strategy.id
وbidding_strategy.name
- حقول الشريحة:
segments.device
وsegments.date
- حقلا المقاييس:
metrics.impressions
وmetrics.clicks
.
SELECT
campaign.id,
campaign.name,
bidding_strategy.id,
bidding_strategy.name,
segments.device,
segments.date,
metrics.impressions,
metrics.clicks
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
اطّلِع على التقسيم لمزيد من المعلومات عن تقسيم تقارير البحث.
حقل المرجع الرئيسي
عادةً ما يتم تضمين حقل المرجع الرئيسي في عبارة SELECT
، ولكن هذا الإجراء اختياري (وليس مطلوبًا).
يستخدم نموذج الطلب هذا حقل موارد رئيسيًا (ad_group.status
) لفلترة
النتائج فقط.
SELECT campaign.id
FROM ad_group
WHERE ad_group.status = PAUSED
متغيّرات Floodlight المخصّصة
يمكنك تضمين متغيّرات Floodlight المخصّصة في جملة SELECT باستخدام أرقام تعريفها.
في هذا المثال، يتضمّن الطلب متغيّرًا مخصّصًا يحمل المعرّف 123454321 لمصدر الحملة.
SELECT
conversion_custom_metrics.id[123454321]
FROM campaign
SELECT
conversion_custom_dimensions.id[123454321]
FROM campaign
أعمدة مخصصة
يمكنك تضمين أعمدة مخصّصة في عبارة SELECT باستخدام أرقام تعريفها.
في هذا المثال، يتضمّن طلب البحث عمودًا مخصّصًا يحمل الرقم التعريفي 12345678 لمصدر الحملة.
SELECT
custom_columns.id[12345678]
FROM campaign
اطّلِع على كيفية الحصول على أرقام تعريف الأعمدة المخصّصة.
حقول المقاييس
يمكنك اختيار حقول المقاييس لمصدر معيّن بدون تضمين أيّ حقول
أخرى من المصدر في عبارة SELECT
.
يختار مثال طلب البحث هذا مقياسَي impressions
وclicks
للمورد campaign
.
SELECT
metrics.impressions,
metrics.clicks
FROM campaign
اطّلِع على metrics
للحصول على
قائمة بحقول المقاييس التي يمكنك استخدامها في طلبات البحث.
حقول الشرائح
يمكنك اختيار حقول الأقسام بدون تحديد حقول الموارد المصاحبة
أو المقاييس في بند SELECT
.
يقسّم هذا المثال النتائج حسب الجهاز.
SELECT segments.device
FROM campaign
اطّلِع على segments
للحصول على
قائمة بحقول الشرائح التي يمكنك استخدامها في طلبات البحث.
الحقول المحظورة
لا يمكنك استخدام الحقول التالية في العبارة SELECT
:
- الحقول غير القابلة للاختيار، أي الحقول التي تحتوي على سمة البيانات الوصفية
Selectable
والمُشار إليها بالرمزfalse
- الحقول المتكرّرة، أي الحقول التي تحمل سمة البيانات الوصفية
Repeated
تم وضع علامةtrue
عليها. - الحقول غير المتاحة للمورد المحدّد في العبارة
FROM
لا يمكن اختيار سمات بعض الموارد معًا. لا توفّر بعض الموارد سوى مجموعة فرعية من جميع المقاييس والشرائح. - شرائح أو مقاييس غير متوافقة اطّلِع على التقسيم للحصول على مزيد من المعلومات.
اطّلِع على المستندات المرجعية للحصول على تفاصيل عن مكان العثور على هذه المعلومات لكل مورد.
عبارة FROM
الفقرة FROM
:
- عبارة مطلوبة لطلبات البحث التي تستهدف
SearchAds360Service
(باستخدام الطريقتَينSearch
وSearchStream
) - يجب عدم تضمينها لطلبات البحث التي يتم إجراؤها على
SearchAds360FieldService
. - تُحدِّد المرجع الرئيسي الذي يعرضه الاستعلام.
- يمكن تحديد مورد واحد فقط.
- تحدد الحقول التي يمكنك استخدامها في جميع العبارات الأخرى في الاستعلام.
الموارد التي تمّ تحديد مصدرها
إذا كانت الموارد المنسوبة متاحة، يتمّ ربطها بشكلٍ ضمني بالموارد التي تحدّدها في جملة FROM
. ما عليك سوى إضافة سماتهم
إلى العبارة SELECT
لعرض قيمها.
يعرض نموذج الطلب هذا كلاً من رقم تعريف المجموعة الإعلانية ورقم تعريف الحملة، لأن campaign
هو مورد منسوبة لمورد ad_group
.
SELECT
campaign.id,
ad_group.id
FROM ad_group
حقل resource_name
يتم دائمًا
عرض حقل resource_name
للمصدر الرئيسي في العبارة FROM
.
في مثال طلب البحث هذا، سيتم تضمين ad_group.resource_name
في الردّ
حتى لو لم يتم اختياره صراحةً في طلب البحث:
SELECT ad_group.id
FROM ad_group
يتم عرض الحقل resource_name
في مصدر منسَب عند اختيار حقل واحد على الأقل.
في مثال طلب البحث هذا، سيتم تضمين campaign.resource_name
في
الردّ لأنّه تم اختيار campaign.id
:
SELECT
campaign.id,
ad_group.id
FROM ad_group
عبارة WHERE
عبارة WHERE
:
- عبارة عن عبارة اختيارية في طلب بحث.
- تُحدِّد شروط فلترة البيانات وتقسيمها للطلب.
تتّبع الشروط النمط التالي:
FIELD_NAME
OPERATOR
VALUE
(مفصولة بمسافات فارغة). - يمكن أن تتضمّن شروطًا متعددة مفصولة بفاصل
AND
.
يوضّح مثال طلب البحث هذا كيفية استخدام عبارة WHERE
لعرض مقاييس impressions
لفترة زمنية معيّنة:
SELECT
campaign.id,
campaign.name,
metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
اطّلِع على التقسيم لمزيد من المعلومات عن تقسيم تقارير البحث.
اطّلِع على النطاقات الزمنية لمعرفة مزيد من المعلومات عن تحديد النطاقات الزمنية في طلبات البحث.
الفلترة حسب الحقل resource_name
يمكنك استخدام الحقل resource_name
لفلترة البيانات أو ترتيبها.
يستخدم مثال طلب البحث هذا الحقل campaign.resource_name
لفلترة النتائج
حسب حملة معيّنة:
SELECT
campaign.id,
campaign.name
FROM campaign
WHERE campaign.resource_name = 'customers/1234567/campaigns/987654'
شروط متعدّدة
يمكنك الجمع بين شروط متعدّدة لفلترة بياناتك.
يطلب مثال طلب البحث هذا عدد مقاييس clicks
لجميع الحملات
مع مقاييس impressions
على الأجهزة الجوّالة في آخر 30 يومًا.
SELECT
campaign.id,
campaign.name,
segments.device,
metrics.clicks
FROM campaign
WHERE metrics.impressions > 0
AND segments.device = MOBILE
AND segments.date DURING LAST_30_DAYS
اطّلِع على التصنيف إلى شرائح لمزيد من المعلومات عن تقسيم تقاريرك إلى شرائح.
الحساسية لحالة الأحرف
عند الفلترة حسب قيم السلاسل، تؤدي الحساسية التلقائية لحالة الأحرف لكلّ عامل مقارنة دورًا مهمًا في فلترة النتائج بشكل صحيح.
يوضّح الجدول التالي حساسية الحالة التلقائية لكل عامل تشغيل.
الحساسية التلقائية لحالة الأحرف | |
---|---|
=/!= |
Case sensitive |
IN/NOT IN |
Case sensitive |
LIKE/NOT LIKE |
Case insensitive |
CONTAINS (...) |
Case sensitive |
REGEXP_MATCH/NOT REGEXP_MATCH |
Case sensitive |
يمكنك استخدام مفتاح التعديل (?i)
لتغيير الحساسية التلقائية لـ
REGEXP_MATCH
وNOT REGEXP_MATCH
إلى غير حساسة لحالة الأحرف، على سبيل المثال:
SELECT campaign.id
FROM campaign
WHERE campaign.name REGEXP_MATCH "(?i).*test.*"
اطّلِع على مرجع قواعد طلبات البحث للحصول على قائمة كاملة بعوامل التشغيل التي يمكنك استخدامها لفلترة بياناتك.
شرائح التاريخ الأساسية
تُعرف حقول الأقسام التالية باسم شرائح التاريخ الأساسي:
segments.date
وsegments.week
وsegments.month
وsegments.quarter
وsegments.year
.
يمكنك استخدام شرائح التاريخ الأساسية في عبارة WHERE
لتحديد تاريخ أو فترة زمنية.
يحدّد مثال طلب البحث هذا DURING LAST_30_DAYS
للحقل segments.date
في العبارة WHERE
:
SELECT
campaign.id,
campaign.name,
segments.date,
metrics.clicks
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
اطّلِع على التصنيف > شرائح البيانات الأساسية للحصول على معلومات تفصيلية عن استخدام شرائح البيانات الأساسية.
الفلترة المحظورة
لا يُسمح بالفلترة في الحالات التالية:
- في حقول الشرائح غير المحدّدة، باستثناء شرائح التواريخ الأساسية.
- في الحقول من أي نوع رسالة، باستثناء الأساسيات (مثل
Int64Value
وStringValue
وما إلى ذلك) - في سمات الحقول المتكرّرة لأي نوع رسالة، باستثناء السمات الأساسية
(مثل
Int64Value
وStringValue
وما إلى ذلك)
عبارة ORDER BY
الفقرة ORDER BY
:
- هو عبارة عن جملة اختيارية في طلب بحث.
- تُستخدَم لتحديد الترتيب الذي يتم عرض النتائج به. يتم ترتيب العناصر وفقًا لهذا
النمط:
FIELD_NAME
ORDERING_OPTION
(مفصولة بمسافة فارغة). - يسمح بخيارَين:
ASC
(تصاعدي) أوDESC
(تنازلي). الترتيب التلقائي هو صعودي.
يرتّب مثال طلب البحث هذا الحملات حسب عدد النقرات بترتيب تنازلي (من الأعلى إلى الأدنى):
SELECT
campaign.name,
metrics.clicks
FROM campaign
ORDER BY metrics.clicks DESC
طلبات متعددة
يمكنك تحديد حقول متعددة في عبارة ORDER BY
باستخدام قائمة مفصولة بفواصل. سيتم ترتيب النتائج بالترتيب نفسه الذي تحدّده في
طلب البحث.
يختار مثال طلب البحث هذا بيانات المجموعة الإعلانية، ويُرتّب النتائج بترتيب صعودي حسب اسم الحملة، ثم بترتيب تنازلي حسب عدد مرات الظهور، ثم بترتيب تنازلي حسب عدد النقرات:
SELECT
campaign.name,
ad_group.name,
metrics.impressions,
metrics.clicks
FROM ad_group
ORDER BY
campaign.name,
metrics.impressions DESC,
metrics.clicks DESC
الجمع بين الطلب والحد
يمكنك استخدام عبارة ORDER BY
مع عبارة LIMIT
لمحاولة
تحسين النتائج.
يعرض مثال طلب البحث هذا الحملات الخمس التي حقّقت أكبر عدد من مرّات الظهور على مدار آخر 30 يومًا:
SELECT
campaign.id,
campaign.name,
metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
ORDER BY metrics.impressions DESC
LIMIT 5
الطلب المحظور
لا يُسمح بالطلب:
- حسب سمات الموارد غير المحدّدة
- حسب المقاييس غير المحدّدة
- حسب الشرائح غير المختارة.
- بالنسبة إلى أنواع الحقول التالية:
MESSAGE
- الحقول المتكرّرة
- سمات الحقول المتكرّرة
عبارة LIMIT
الفقرة LIMIT
:
- هو عبارة عن جملة اختيارية في طلب بحث.
- تسمح لك هذه السمة بتحديد عدد النتائج التي يعرضها طلب البحث.
هذه العبارة مفيدة، على سبيل المثال، إذا كنت مهتمًا فقط بعينة أو ملخص للنتائج.
يحدّد نموذج الطلب هذا 50 نتيجة كحدّ أقصى:
SELECT
campaign.name,
ad_group.name,
segments.device,
metrics.impressions
FROM ad_group
ORDER BY metrics.impressions DESC
LIMIT 50
عبارة PARAMETERS
تتيح لك العبارة PARAMETERS
تحديد المَعلمات الوصفية للطلب.
تضمين المسودّات
تتحكّم المَعلمة include_drafts
في ما إذا كان سيتم تضمين كيانات المسودات في
النتائج. القيمة التلقائية هي false
. اضبطها على true
لتضمين كيانات المسودات.
يعرض مثال طلب البحث هذا كلّ من مسودّات الحملات والحملات العادية:
SELECT campaign.name
FROM campaign
PARAMETERS include_drafts=true
تم إلغاء اختيار resource_name
.
تسمح لك المَعلمة omit_unselected_resource_names
باستبعاد حقل
resource_name
من جميع الموارد التي لم يتم طلبها صراحةً في عبارة
SELECT
. القيمة التلقائية هي false
. في حال ضبط هذه المَعلمة على true
، ننصحك
بطلب اسم المورد للمورد الأساسي
وأي موارد منسوبة في عبارة SELECT
.
لا يعرض نموذج الطلب هذا الحقل campaign.resource_name
ولا customer.resource_name
لأنهما غير مضمّنين في عبارة SELECT
:
SELECT
campaign.name,
customer.id
FROM campaign
PARAMETERS omit_unselected_resource_names = true
يعرض مثال طلب البحث هذا الحقل campaign.resource_name
، لأنّه
تمّ طلبه صراحةً في العبارة SELECT
:
SELECT
campaign.name,
campaign.resource_name
FROM campaign
PARAMETERS omit_unselected_resource_names = true
تغيير العملة المستخدَمة في المقاييس
تتيح لك المَعلمة metrics_currency
تحديد العملة التي سيتم استخدامها
عند احتساب مقياس مضمّن في عبارة SELECT
.
الإعداد التلقائي هو استخدام العملة المحلية للحساب. في حال ضبط هذه المَعلمة، عليك استخدام رمز العملة المكوّن من 3 أحرف وفقًا لمعيار ISO 4217.
على سبيل المثال: دولار أمريكي ويورو.
يعرض مثال الاستعلام هذا مقياس cost_micros بالعملة المحلية للحساب.
SELECT
campaign.name,
metrics.cost_micros
FROM campaign
WHERE segments.date >= "2018-08-15"
AND segments.date < "2018-08-16"
يعرض هذا المثال الاستعلام المقياس Cost_micros بالبيزو التشيلي (CLP).
SELECT
campaign.name,
metrics.cost_micros
FROM campaign
WHERE segments.date >= "2018-08-15"
AND segments.date < "2018-08-16"
PARAMETERS metrics_currency = "CLP"