جستارهای مربوط به فیلدهای متریک و بخش را می توان به روش reports.search
ارسال کرد. برای ساختن یک پرس و جو در زبان پرس و جو Merchant Center، ابتدا باید پرس و جو را با استفاده از گرامر زبان بنویسید. یک پرس و جو از تعدادی بند تشکیل شده است:
-
SELECT
-
FROM
-
WHERE
-
ORDER BY
-
LIMIT
بندها از نام فیلدها ، نام جدول ، عملگرها ، شرایط و ترتیب استفاده می کنند تا به شما در انتخاب داده های مورد نظر کمک کنند. پس از ترکیب در یک جستار واحد، میتوان با استفاده از Google Content API برای خرید، درخواستی ارسال کرد. بیایید ببینیم که چگونه می توان از هر بند استفاده کرد.
بندها
انتخاب کنید
عبارت 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
مشخص کرد. در حال حاضر، فقط جدول 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 نشان میدهد که در آن تعداد کلیکها در بازه زمانی 30 روزه بیش از 100 است.
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
ترتیب بازگشت نتایج را مشخص می کند. این به شما امکان می دهد تا داده ها را به ترتیب صعودی یا نزولی بر اساس نام فیلد مرتب کنید. هر سفارش به عنوان یک 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