این راهنما توضیح میدهد که چرا ردیفهایی با معیارهای صفر در گزارشهای API گوگل ادز ظاهر میشوند و چگونه میتوان آنها را در کوئریهای خود حذف یا مدیریت کرد.
هیچ معیاری در نتایج جستجو وجود ندارد
هنگام اجرای یک پرس و جو، ممکن است با معیارهایی برای موجودیتهایی مواجه شوید که صفر هستند. این میتواند به دلایل زیر باشد:
- نهادها واجد شرایط نمایش نیستند.
- آنها در محدوده تاریخ گزارش متوقف شدند.
در نتایج جستجو، اغلب میخواهید اطلاعاتی در مورد عملکرد کمپینهای خود به دست آورید. در این زمینه، معیارهای صفر ممکن است مطلوب نباشند. برای تهیه گزارشی مفیدتر، میتوانید صریحاً معیارهای صفر را حذف کنید.
معیارهای صفر را با یک گزاره حذف کنید
گزاره (predicate) عبارتی است که به صورت TRUE ، FALSE یا UNKNOWN ارزیابی میشود. گزارهها در شرط جستجوی عبارتهای WHERE در زبان جستجوی گوگل ادز استفاده میشوند.
پرسوجوی زیر نحوه حذف صریح معیارهای صفر با یک گزاره را نشان میدهد:
SELECT
campaign.id,
metrics.impressions
FROM campaign
WHERE metrics.impressions > 0
با تقسیمبندی، معیارهای صفر را حذف کنید
معیارهای صفر همیشه هنگام تقسیمبندی یک گزارش حذف میشوند، مشروط بر اینکه همه معیارهای انتخاب شده صفر باشند ( به ردیفهای برگردانده شده با معیارهای صفر مراجعه کنید).
بخشبندی یک گزارش با گنجاندن هر فیلد segments در عبارت SELECT از عبارت جستجو انجام میشود (فیلتر کردن بر اساس یک بخش تاریخ اصلی در WHERE بدون انتخاب آن در SELECT گزارش را بخشبندی نمیکند). برای مثال، اگر گزارشی را بر اساس segments.date بخشبندی کنید، معیارها با یک ردیف برای هر تاریخ تجزیه میشوند. تاریخهای بدون معیار در چنین گزارشی بازگردانده نمیشوند.
برای کوئری زیر، گزارش شامل ردیفهای با معیار صفر نخواهد بود:
SELECT
campaign.name,
metrics.impressions,
segments.date
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
ردیفهایی با معیارهای صفر برگردانده شدند
ردیفهایی که معیارهای انتخابشدهی آنها همگی صفر هستند، هنگام بخشبندی بازگردانده نمیشوند. برای مثال، کوئری زیر را در نظر بگیرید که metrics.impressions ، metrics.clicks و metrics.conversions را انتخاب میکند:
SELECT
ad_group_criterion.criterion_id,
metrics.impressions,
metrics.clicks,
metrics.conversions,
segments.date
FROM keyword_view
WHERE segments.date BETWEEN '2026-01-01' AND '2026-01-31'
گزارش حاصل شامل هیچ ردیفی نخواهد بود که در آن هر سه معیار انتخاب شده صفر باشند، اما ردیفهایی را برمیگرداند که حداقل یکی از سه معیار انتخاب شده در آنها بزرگتر از صفر باشد.
هنگام جستجوی دادههای تاریخی فراتر از دوره نگهداری دادهها ، دادههای جزئی قدیمیتر از ۳۷ ماه در دسترس نیستند و ردیفها را برنمیگردانند. درخواستها برای بخشهای تاریخ جزئی ( segments.date ، segments.week و segments.hour ) که محدودههای قدیمیتر از ۳۷ ماه را پوشش میدهند، در نسخه ۲۴ و بعد از آن (یا DateRangeError.REQUESTED_DATE_GRANULARITY_NOT_SUPPORTED در نسخه ۲۳ و بالاتر (یا DateRangeError.UNKNOWN ) را برمیگردانند. دادههای تجمیعشده سطح بالا ( segments.month ، segments.quarter و segments.year ) به مدت ۱۱ سال، مطابق با شروع دوره تقویمی کامل بعدی، حفظ میشوند. به عنوان مثال، اگر نقطه عطف ۱۱ ساله مربوط به 2015-03-22 (یا 2015-03-01 ) باشد، دادههای ماهانه از اولین ماه تقویمی کامل پس از نقطه عطف ( 2015-04-01 ) در دسترس هستند. برای جزئیات بیشتر به محدودههای تاریخ مراجعه کنید.