با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
انتخابگرها به برنامه نویس کمک می کنند تا درخواستی را بسازد که موجودیت های Google Ads درخواستی را واکشی می کند. با انتخابگرها، می توان لیست موجودیت های بازیابی شده را محدود کرد و آن را سفارش داد. اکثر انتخابگرها روش های زیر را دارند:
withCondition()
یک شرط را به یک انتخابگر اضافه می کند. اگر چند شرط استفاده شود، آنها با هم AND-ed می شوند، به عبارت دیگر، انتخابگر فقط موجودیت هایی را برمی گرداند که همه شرایط مشخص شده را برآورده کنند.
withIds()
مجموعه ای از شناسه ها را به عنوان شرط اضافه می کند. یک شرط مبتنی بر ID همراه با سایر شرایط AND-ED خواهد شد.
forDateRange()
زمانی مورد نیاز است که یک شرط یا بند سفارش به یک فیلد آمار ، مانند Ctr یا Impressions اشاره می کند. اگر همه کمپینهای دارای بیش از ۱۰۰ نمایش را درخواست کنید، اسکریپتهای Google Ads باید محدوده تاریخ را بدانند.
orderBy()
ترتیب موجودیت های برگشتی را مشخص می کند.
withLimit()
تعداد موجودیت های برگشتی را به مقدار مشخص شده محدود می کند. این به ویژه در ارتباط با orderBy() به منظور واکشی مواردی مانند "10 کلمه کلیدی با بیشترین تعداد نمایش دیروز" مفید است. بهطور پیشفرض، همه انتخابکنندهها محدودیت را روی 50000 تنظیم میکنند. شما می توانید با تعیین دستی یک محدودیت، محدودیت را افزایش دهید.
این روش ها را می توان به هر ترتیبی فراخوانی کرد. یک استثناء orderBy() است، که در آن ترتیب فراخوانی ها واقعاً مهم است: چندین فراخوانی به این متد چندین عبارت سفارشی را مشخص می کند و آنها به ترتیب اعمال می شوند. قطعه زیر را در نظر بگیرید:
تاریخ آخرین بهروزرسانی 2025-09-03 بهوقت ساعت هماهنگ جهانی.
[null,null,["تاریخ آخرین بهروزرسانی 2025-09-03 بهوقت ساعت هماهنگ جهانی."],[[["\u003cp\u003eSelectors in Google Ads scripts are used to retrieve specific entities like campaigns or keywords by constructing queries.\u003c/p\u003e\n"],["\u003cp\u003eSelectors offer methods like \u003ccode\u003ewithCondition()\u003c/code\u003e, \u003ccode\u003ewithIds()\u003c/code\u003e, \u003ccode\u003eforDateRange()\u003c/code\u003e, \u003ccode\u003eorderBy()\u003c/code\u003e, and \u003ccode\u003ewithLimit()\u003c/code\u003e to refine and order results.\u003c/p\u003e\n"],["\u003cp\u003eMultiple conditions added using \u003ccode\u003ewithCondition()\u003c/code\u003e are treated as AND conditions, requiring entities to satisfy all of them.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eorderBy()\u003c/code\u003e allows sorting results based on specified criteria, and calling it multiple times adds further ordering levels.\u003c/p\u003e\n"],["\u003cp\u003eChaining selector methods simplifies code and enhances readability by applying multiple operations in a single statement.\u003c/p\u003e\n"]]],[],null,["# Selectors help the programmer construct the query that fetches requested\nGoogle Ads entities. With selectors, one can narrow down the list of\nretrieved entities and order it. Most selectors have the following\nmethods:\n\n`withCondition()`\n: Adds a condition to a selector. If multiple conditions are used, they are\n AND-ed together, in other words, the selector will only return entities that\n satisfy **all** of the specified conditions.\n\n`withIds()`\n: Adds a collection of [IDs](/google-ads/scripts/docs/concepts/ids) as a\n condition. An ID-based condition will be AND-ed together with all the others.\n\n`forDateRange()`\n: Is needed when a condition or ordering clause references a\n [Stats](/google-ads/scripts/docs/reference/adsapp/adsapp_stats) field, such as\n Ctr or Impressions. If you request all campaigns with over 100 impressions,\n Google Ads scripts will need to know the date range to look into.\n\n`orderBy()`\n: Specifies the ordering of the returned entities.\n\n`withLimit()`\n: Limits the number of returned entities to the specified value. It is\n particularly useful in conjunction with `orderBy()` in order to fetch things\n like \"10 keywords with most impressions yesterday\". By default, all selectors\n will set the limit to 50,000. You can increase the limit by manually specifying\n a limit.\n\nThese methods can be called in any order. One exception is `orderBy()`, where\norder of calls indeed matters: multiple calls to this method will specify\nmultiple ordering clauses, and they will apply in order. Consider the\nfollowing snippet: \n\n selector = selector.forDateRange(\"LAST_14_DAYS\")\n .orderBy(\"metrics.clicks DESC\")\n .orderBy(\"metrics.ctr ASC\");\n\nThe results will be ordered by Clicks in descending order. Results with equal\nClicks values will be ordered by Ctr in ascending order.\n\nCalls to a selector's methods can be chained together. The following code \n\n var campaignSelector = AdsApp.campaigns();\n campaignSelector.withCondition(\"metrics.clicks \u003e 10\");\n campaignSelector.withCondition(\"metrics.impressions \u003e 1000\");\n campaignSelector.orderBy(\"metrics.impressions DESC\");\n campaignSelector.forDateRange(\"YESTERDAY\");\n\ncan be re-written in a more compact fashion: \n\n var campaignSelector = AdsApp.campaigns()\n .withCondition(\"metrics.clicks \u003e 10\")\n .withCondition(\"metrics.impressions \u003e 1000\")\n .orderBy(\"metrics.impressions DESC\")\n .forDateRange(\"YESTERDAY\");\n\nOnce the selector is constructed, one can obtain an\n[Iterator](/google-ads/scripts/docs/concepts/iterators) from it by calling\n`selector.get()`.\n| **Note:** Some selectors (for example [`AdParamSelector`](/google-ads/scripts/docs/reference/adsapp/adsapp_adparamselector) and [`LabelSelector`](/google-ads/scripts/docs/reference/adsapp/adsapp_labelselector)) expose fewer methods since they operate on entities that are more restricted (don't have any stats or meaningful fields to order by).\n\nRead [Best Practices](/google-ads/scripts/docs/best-practices) for tips\nand tricks on efficient selector usage."]]