Trình chọn (Selector)

Bộ chọn giúp lập trình viên xây dựng truy vấn để tìm nạp các thực thể Google Ads mong muốn. Với bộ chọn, bạn có thể thu hẹp danh sách các thực thể được truy xuất và sắp xếp chúng. 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, thì các điều kiện đó sẽ được kết hợp với nhau, 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 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 AND cùng với tất cả các điều kiện khác.
forDateRange()
Cần dùng khi một điều kiện hoặc mệnh đề thứ tự tham chiếu đến trường 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ả cá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 cần 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ề theo giá trị đã chỉ định. API 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 trong ngày 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 này bằng cách chỉ định giới hạn theo cách thủ công.

Các phương thức này có thể được gọi 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ự quan trọng: nhiều lệnh gọi đến phương thức này sẽ chỉ định nhiều mệnh đề có thứ tự và các mệnh đề này sẽ được á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 Ctr theo thứ tự tăng dần.

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

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 nhỏ 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 Iterator từ bộ chọn đó bằng cách gọi selector.get().

Đọc 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 hiệu quả.