يمكن إرسال طلبات البحث عن حقول المقاييس والشرائح إلى الطريقة reports.search
. لإنشاء طلب بحث بلغة طلبات البحث في Merchant Center، عليك أولاً إنشاء
طلب البحث باستخدام قواعد اللغة.
يتكون طلب البحث من عدد من الجمل:
SELECT
FROM
WHERE
ORDER BY
LIMIT
تستخدِم الجمل أسماء الحقول وأسماء الجداول وعوامل التشغيل والشروط و عمليات الترتيب لمساعدتك في اختيار البيانات المطلوبة. بعد دمج هذه الطلبات في طلب واحد، يمكن إرسال طلب باستخدام Google Content API for Shopping. لنلقِ نظرة على كيفية استخدام كل عبارة.
العبارات
SELECT
تحدّد العبارة SELECT
مجموعة من الحقول التي يجب جلبها في الطلب. SELECT
تستخدِم هذه الدالة قائمة مفصولة بفواصل لحقول الشرائح والمقاييس، وتُعرِض القيم
في الاستجابة. يكون البند SELECT
مطلوبًا في طلب البحث.
في ما يلي نموذج طلب بحث يختار مقاييس النقرات من جدول معيّن:
SELECT
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
يمكنك أيضًا طلب أنواع حقول مختلفة في طلب واحد:
SELECT
segments.date,
segments.program,
metrics.impressions,
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
حقول الشرائح
segments.date
segments.program
المقاييس
metrics.impressions
metrics.clicks
لا يُسمح ببعض الحقول في عبارة SELECT
بسبب القيد التالي:
- طلب حقول الشرائح بدون حقل مقياس واحد على الأقل
يمكن العثور على معلومات ذات صلة بالشرط أعلاه في مستنداتنا المرجعية.
FROM
تحدِّد العبارة FROM
الجدول الذي يتم جلب البيانات منه في الطلب. يحدِّد جدول
في العبارة FROM
الحقول التي يمكن استخدامها من قِبل كل العبارة
الأخرى لطلب البحث المحدّد. يمكن تحديد جدول واحد فقط في عبارة
FROM
. لا يتوفّر حاليًا سوى جدول MerchantPerformanceView.
تكون عبارة FROM
مطلوبة في طلب بحث إلى طريقة search
في
reports
الخدمة.
أين؟
تحدِّد عبارة WHERE
الشروط التي يجب تطبيقها عند فلترة البيانات لأجل
الطلب. عند استخدام العبارة WHERE
، يمكن تحديد شرط واحد أو أكثر
باستخدام AND
لفصلها. يجب أن يتّبع كل شرط النمط
field_name Operator value
. يمكن استخدام أيّ حقل شرائح في عبارة WHERE
، ولكن يجب تحديد حقول المقاييس في عبارة SELECT
لكي تتمكّن من
استخدامها في عبارة WHERE
. إنّ عبارة WHERE
مطلوبة في طلب البحث،
لأنّه يجب دائمًا تحديد النطاق الزمني الذي تريد فيه عرض
بيانات الأداء.
في ما يلي مثال على استخدام WHERE
لعرض المقاييس من مدّة زمنية معيّنة:
SELECT
segments.offer_id,
metrics.impressions
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
يمكنك الجمع بين شروط متعدّدة لفلترة البيانات. سيعرض هذا المثال عدد النقرات لكل عرض في برنامج SHOPPING_ADS حيث تكون النقرات > 100 خلال فترة 30 يومًا المحدّدة.
SELECT
segments.offer_id,
segments.program,
metrics.clicks
FROM MerchantPerformanceView
WHERE metrics.clicks > 100
AND segments.program = SHOPPING_ADS
AND segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’;
في الطلب التالي، ستلاحظ أنّه تم اختيار segments.date
.
بغض النظر عمّا إذا اخترت segments.date
، يجب دائمًا تقديم نطاق زمني محدود في عبارة
WHERE
لاسترداد بيانات الأداء.
SELECT
segments.date,
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
عند الفلترة، من المهم مراعاة حساسية عامل التشغيل لحالة الأحرف.
للحصول على قائمة كاملة بعوامل التشغيل، يمكنك الرجوع إلى قواعد اللغة.
ORDER BY
تحدِّد عبارة ORDER BY
الترتيب الذي يجب فيه
عرض النتائج. يتيح لك ذلك ترتيب البيانات بترتيب تصاعدي أو تنازلي
استنادًا إلى اسم حقل. يتم تحديد كل ترتيب على أنّه field_name
متبوعًا بأحد الرمزَين
ASC
أو DESC
. إذا لم يتم تحديد ASC
أو DESC
، يتم ضبط الترتيب تلقائيًا
على ASC
. لا يمكن استخدام سوى الحقول المحدّدة في عبارة SELECT
في عبارة
ORDER BY
. يكون البند ORDER BY
اختياريًا في الاستعلام.
يرتّب الاستعلام التالي الصفوف المعروضة حسب عدد النقرات من الأعلى إلى الأدنى:
SELECT
segments.offer_id,
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
ORDER BY metrics.clicks DESC
يمكنك تحديد حقول متعددة في عبارة ORDER BY
باستخدام قائمة مفصولة بفاصلة. سيتمّ ترتيب العناصر بالترتيب نفسه المحدّد في طلب البحث.
على سبيل المثال، في طلب البحث هذا، سيتم ترتيب النتائج تصاعديًا حسب
offer_id
، ثم تنازليًا حسب عدد مرات الظهور، ثم تنازليًا حسب عدد النقرات:
SELECT
segments.offer_id,
metrics.impressions,
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
ORDER BY
segments.offer_id,
metrics.impressions DESC,
metrics.clicks DESC
LIMIT
تسمح لك عبارة LIMIT
بتحديد عدد النتائج التي سيتم عرضها.
يكون هذا مفيدًا إذا كنت مهتمًا بعرض ملخّص فقط.
على سبيل المثال، يمكن استخدام LIMIT
لتقييد إجمالي عدد النتائج للبحث التالي:
SELECT
segments.program,
segments.offer_id,
metrics.impressions
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
ORDER BY metrics.impressions DESC
LIMIT 50