Trình chọn (Selector)

Bộ chọn giúp lập trình viên tạo truy vấn tìm nạp các thực thể Google Ads mong muốn. Với bộ chọn, người dùng có thể thu hẹp danh sách các thực thể được truy xuất và sắp xếp danh sách đó. Hầu hết bộ chọn đều có các phương thức sau:

withCondition()
Thêm một điều kiện vào bộ chọn. Nếu bạn sử dụng nhiều điều kiện, các điều kiện đó sẽ được kết hợp với nhau bằng toán tử AND. Nói cách khác, bộ chọn sẽ chỉ trả về các thực thể đáp ứng tất cả điều kiện đã chỉ định.
withIds()
Thêm một tập hợp mã nhận dạng làm điều kiện. Điều kiện dựa trên mã nhận dạng sẽ được kết hợp với tất cả các điều kiện khác bằng toán tử AND.
forDateRange()
Cần thiết khi một điều kiện hoặc mệnh đề sắp xếp tham chiếu đến trường Số liệu thống kê, chẳng hạn như Ctr hoặc Lượt hiển thị. Nếu bạn yêu cầu tất cả chiến dịch có hơn 100 lượt hiển thị, thì tập lệnh Google Ads sẽ cần biết phạm vi ngày để xem xét.
orderBy()
Chỉ định thứ tự của các thực thể được trả về.
withLimit()
Giới hạn số lượng thực thể được trả về ở giá trị đã chỉ định. Công cụ này đặc biệt hữu ích khi kết hợp với orderBy() để tìm nạp những thông tin như "10 từ khoá có nhiều lượt hiển thị nhất vào hôm qua". Theo mặc định, tất cả bộ chọn sẽ đặt giới hạn là 50.000. Bạn có thể tăng giới hạn bằng cách chỉ định giới hạn theo cách thủ công.

Bạn có thể gọi các phương thức này theo thứ tự bất kỳ. Có một ngoại lệ là orderBy(), trong đó thứ tự các lệnh gọi thực sự rất quan trọng: nhiều lệnh gọi đến phương thức này sẽ chỉ định nhiều mệnh đề thứ tự và các mệnh đề này sẽ áp dụng theo thứ tự. Hãy xem xét đoạn mã sau:

selector = selector.forDateRange("LAST_14_DAYS")
    .orderBy("metrics.clicks DESC")
    .orderBy("metrics.ctr ASC");

Kết quả sẽ được sắp xếp theo Số lượt nhấp theo thứ tự giảm dần. Các kết quả có giá trị Số lượt nhấp bằng nhau sẽ được sắp xếp theo Tỷ lệ nhấp theo thứ tự tăng dần.

Các lệnh gọi đến các phương thức của bộ chọn có thể được xâu chuỗi lại với nhau. Mã sau

var campaignSelector = AdsApp.campaigns();
campaignSelector.withCondition("metrics.clicks > 10");
campaignSelector.withCondition("metrics.impressions > 1000");
campaignSelector.orderBy("metrics.impressions DESC");
campaignSelector.forDateRange("YESTERDAY");

có thể được viết lại theo cách ngắn gọn hơn:

var campaignSelector = AdsApp.campaigns()
  .withCondition("metrics.clicks > 10")
  .withCondition("metrics.impressions > 1000")
  .orderBy("metrics.impressions DESC")
  .forDateRange("YESTERDAY");

Sau khi tạo bộ chọn, bạn có thể lấy một Iterator từ bộ chọn đó bằng cách gọi selector.get().

Hãy đọc phần Các phương pháp hay nhất để biết các mẹo và thủ thuật về cách sử dụng bộ chọn một cách hiệu quả.