زبان پرسوجوی گوگل ادز به شما امکان میدهد ردیفهای برگردانده شده در پاسخهای پرسوجوی خود را با استفاده از بندهای ORDER BY و LIMIT مرتبسازی و محدود کنید.
نتایج سفارش
شما میتوانید ترتیب ردیفها را در پاسخ خود با استفاده از دستور ORDER BY مشخص کنید، که شامل یک یا چند توالی جدا شده با کاما از موارد زیر است:
FieldName (ASC | DESC)?
اگر بعد از نام فیلد ASC یا DESC را مشخص نکنید، API گوگل ادز به طور پیشفرض ASC را در نظر میگیرد. اگر عبارت ORDER BY را به طور کامل حذف کنید، ترتیب ردیفهای برگردانده شده قطعی نخواهد بود.
دستور ORDER BY زیر، گزارش سطح کمپین را بر اساس تعداد نمایش (impress) به صورت نزولی و نام کمپین به صورت صعودی مرتب میکند:
ORDER BY metrics.impressions DESC, campaign.name ASC
- بر اساس ویژگیهای منابع غیرانتخابی
- بر اساس معیارهای غیرانتخابی
- بر اساس بخشهای غیرانتخابشده
- برای فیلدهایی از انواع زیر:
-
MESSAGE - فیلدهای تکراری
- ویژگیهای فیلدهای تکراری
-
محدود کردن تعداد نتایج
شما میتوانید تعداد کل نتایج برگشتی را با استفاده از عبارت LIMIT با یک عدد صحیح مثبت ( 1 یا بزرگتر؛ LIMIT 0 معتبر نیست) محدود کنید. با ترکیب این مورد با مرتبسازی نتایج، میتوانید گزارشهای "N مورد برتر" را تولید کنید، مانند گزارشی که شامل پنج کمپین با بالاترین میزان بازدید در ۳۰ روز گذشته است:
SELECT
campaign.id,
campaign.name,
metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
ORDER BY metrics.impressions DESC
LIMIT 5
فیلتر کردن نتایج
هنگام ترکیب فیلترهای WHERE با ORDER BY و LIMIT ، محدودیتهای فیلترینگ زیر را در نظر داشته باشید:
- فیلتر کردن بخشها بدون انتخاب آنها مجاز نیست، به جز فیلدهای بخش تاریخ "اصلی" (
segments.date،segments.week،segments.month،segments.quarterوsegments.year). - فیلتر کردن مستقیماً روی فیلدهای مرکب
MESSAGEمجاز نیست (به جز پیامهای پوششی اولیه مانندInt64ValueوStringValue)؛ در عوض، فیلتر روی فیلدهای اولیه اسکالر آنها (int64،string،bool) یا زیرفیلدهای enum انجام میشود. - فیلتر کردن روی ویژگیهای مرکب
MESSAGEفیلدهای تکراری مجاز نیست؛ فقط زیرفیلدهای اسکالر اولیه (int64،string،bool)، enum یا wrapper اولیه میتوانند فیلتر شوند.