Ngôn ngữ truy vấn Google Ads

Ngôn ngữ truy vấn Google Ads có thể truy vấn API Google Ads cho

Tài nguyên và thuộc tính, phân đoạn và chỉ số có liên quan bằng cách sử dụng
GoogleAdsService Tìm kiếm hoặc SearchStream
Kết quả từ một truy vấn Google AdsService là danh sách các thực thể GoogleAdsRow, trong đó mỗi GoogleAdsRow đại diện cho một tài nguyên. Nếu có bất kỳ thuộc tính hoặc chỉ số nào được yêu cầu, thì hàng cũng sẽ bao gồm các trường đó. Nếu có phân đoạn nào được yêu cầu, phản hồi cũng sẽ hiển thị một hàng bổ sung cho mỗi bộ dữ liệu tài nguyên phân đoạn.
Siêu dữ liệu về các trường và tài nguyên có sẵn trong
GoogleAdsFieldService

Dịch vụ này cung cấp một danh mục các trường có thể truy vấn với thông tin cụ thể về khả năng tương thích và loại của những trường đó.

Kết quả từ truy vấn GoogleAdsFieldService là danh sách các thực thể GoogleAdsField, trong đó mỗi GoogleAdsField chứa thông tin chi tiết về trường đã yêu cầu.

Truy vấn các thuộc tính của tài nguyên

Dưới đây là truy vấn cơ bản về các thuộc tính của tài nguyên chiến dịch, minh hoạ cách trả về mã nhận dạng, tên và trạng thái của chiến dịch:

SELECT
  campaign.id,
  campaign.name,
  campaign.status
FROM campaign
ORDER BY campaign.id

Truy vấn này sắp xếp theo mã chiến dịch. Mỗi GoogleAdsRow kết quả sẽ đại diện cho một đối tượng campaign được điền sẵn các trường đã chọn (bao gồm trường đó đối với resource_name của chiến dịch).

Để tìm hiểu xem trường nào khác có sẵn cho các truy vấn chiến dịch, hãy tham khảo tài liệu tham khảo về Campaign.

Truy vấn chỉ số

Cùng với các thuộc tính đã chọn cho một tài nguyên nhất định, bạn cũng có thể truy vấn các chỉ số có liên quan:

SELECT
  campaign.id,
  campaign.name,
  campaign.status,
  metrics.impressions
FROM campaign
WHERE campaign.status = 'PAUSED'
  AND metrics.impressions > 1000
ORDER BY campaign.id

Truy vấn này chỉ lọc cho các chiến dịch có trạng thái PAUSED và có hơn 1000 lượt hiển thị, trong khi sắp xếp theo mã chiến dịch. Mỗi GoogleAdsRow kết quả sẽ có một trường metrics được điền các chỉ số đã chọn.

Để biết danh sách các chỉ số có thể truy vấn, hãy tham khảo tài liệu về Metrics.

Truy vấn phân đoạn

Cùng với các thuộc tính đã chọn cho một tài nguyên nhất định, bạn cũng có thể truy vấn các phân đoạn có liên quan:

SELECT
  campaign.id,
  campaign.name,
  campaign.status,
  metrics.impressions,
  segments.date,
FROM campaign
WHERE campaign.status = 'PAUSED'
  AND metrics.impressions > 1000
  AND segments.date during LAST_30_DAYS
ORDER BY campaign.id

Tương tự như truy vấn cho các chỉ số, truy vấn này chỉ lọc cho các chiến dịch có trạng thái PAUSED và có hơn 1000 lượt hiển thị; tuy nhiên, truy vấn này phân đoạn dữ liệu theo ngày. Điều này dẫn đến mỗi GoogleAdsRow kết quả đại diện cho một bộ dữ liệu của chiến dịch và ngày là Segment. Điều quan trọng cần lưu ý là phân đoạn sẽ phân tách các chỉ số đã chọn, nhóm theo từng phân đoạn trong mệnh đề SELECT.

Để biết danh sách các phân đoạn có thể truy vấn, hãy tham khảo tài liệu về Segments.

Trong truy vấn về một tài nguyên nhất định, bạn có thể kết hợp với các tài nguyên liên quan khác nếu có. Các tài nguyên liên quan này được gọi là "tài nguyên được phân bổ". Bạn có thể kết hợp các tài nguyên được phân bổ một cách ngầm ẩn bằng cách chọn một thuộc tính trong truy vấn của mình.

SELECT
  campaign.id,
  campaign.name,
  campaign.status,
  bidding_strategy.name
FROM campaign
ORDER BY campaign.id

Truy vấn này không chỉ chọn thuộc tính chiến dịch mà còn lấy các thuộc tính liên quan từ mỗi chiến dịch đã chọn. Mỗi GoogleAdsRow kết quả đại diện cho một đối tượng campaign được điền sẵn các thuộc tính chiến dịch đã chọn, cũng như thuộc tính chiến lược đặt giá thầu đã chọn bidding_strategy.name.

Để tìm hiểu những tài nguyên được phân bổ cho các truy vấn chiến dịch, hãy tham khảo tài liệu tham khảo về Campaign.

Đột biến dựa trên kết quả truy vấn

Khi truy vấn một tài nguyên nhất định, bạn có thể ngay lập tức lấy những kết quả trả về đó làm đối tượng, sửa đổi chúng và gửi lại phương thức thay đổi trong dịch vụ của tài nguyên đó. Dưới đây là quy trình làm việc mẫu:

  1. Thực thi truy vấn cho tất cả các chiến dịch hiện đang PAUSED và có số lượt hiển thị lớn hơn 1000.
  2. Lấy đối tượng Campaign từ trường campaign của từng GoogleAdsRow trong phản hồi.
  3. Thay đổi trạng thái của mỗi chiến dịch từ PAUSED thành ENABLED.
  4. Hãy gọi CampaignService.MutateCampaigns với các chiến dịch đã sửa đổi để cập nhật các chiến dịch đó.

Siêu dữ liệu trường

Các truy vấn được gửi đến GoogleAdsFieldService được dùng để truy xuất siêu dữ liệu trường. Bạn có thể sử dụng thông tin này để hiểu cách sử dụng các trường cùng nhau trong một truy vấn. Vì dữ liệu có sẵn từ API và cung cấp siêu dữ liệu cần thiết để xác thực hoặc xây dựng truy vấn, nên việc này cho phép nhà phát triển thực hiện việc này theo phương thức lập trình. Dưới đây là một truy vấn điển hình cho siêu dữ liệu:

SELECT
  name,
  category,
  selectable,
  filterable,
  sortable,
  selectable_with,
  data_type,
  is_repeated
WHERE name = "<INSERT_RESOURCE_OR_FIELD>"

Bạn có thể thay thế <INSERT_RESOURCE_OR_FIELD> trong truy vấn này bằng một tài nguyên (chẳng hạn như customer hoặc campaign) hoặc trường (chẳng hạn như campaign.id, metrics.impressions hoặc ad_group.id).

Để biết danh sách các trường có thể truy vấn, hãy tham khảo tài liệu về GoogleAdsField.

Ví dụ về mã

Thư viện ứng dụng có các ví dụ về cách sử dụng Ngôn ngữ truy vấn Google Ads trong GoogleAdsService. Thư mục các thao tác cơ bản có các ví dụ như GetCampaigns, GetKeywordsSearchForGoogleAdsFields. Thư mục reporting (báo cáo) có một ví dụ về GetKeywordStats.