Google Ads 쿼리 언어

컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.

Google Ads 쿼리 언어는 Google Ads API를 쿼리하여

다음을 사용하여 리소스 및 관련 속성, 세그먼트, 측정항목
GoogleAdsService 검색 또는 SearchStream
Google AdsService 쿼리 결과는 GoogleAdsRow 인스턴스 목록으로, 각 GoogleAdsRow는 리소스를 나타냅니다. 속성 또는 측정항목이 요청되면 행에도 이러한 필드가 포함됩니다. 세그먼트가 요청되면 응답에는 각 세그먼트 리소스 튜플의 추가 행도 표시됩니다.
사용 가능한 필드 및 리소스에 대한 메타데이터
GoogleAdsFieldService

이 서비스는 호환성 및 유형에 대한 세부정보가 포함된 쿼리 가능한 필드 카탈로그를 제공합니다.

GoogleAdsFieldService 쿼리의 결과는 GoogleAdsField 인스턴스 목록이며, 각 GoogleAdsField에는 요청된 필드에 대한 세부정보가 포함되어 있습니다.

리소스 속성 쿼리

다음은 캠페인 리소스 속성의 기본 쿼리로, 캠페인 ID, 이름, 상태를 반환하는 방법을 보여줍니다.

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

이 쿼리는 캠페인 ID별로 정렬합니다. 결과 GoogleAdsRow는 선택된 필드 (지정된 캠페인 resource_name 포함)로 채워진 campaign 객체를 나타냅니다.

캠페인 쿼리에 사용할 수 있는 다른 필드를 알아보려면 Campaign 참조 문서를 확인하세요.

측정항목 쿼리

특정 리소스에 대해 선택한 속성 외에도 관련 측정항목을 쿼리할 수 있습니다.

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

이 쿼리는 캠페인 ID로 정렬하면서 상태가 PAUSED이고 노출수가 1, 000회를 초과하는 캠페인만 필터링합니다. 결과 GoogleAdsRow마다 metrics 필드가 선택된 측정항목으로 채워집니다.

쿼리 가능한 측정항목 목록은 Metrics 문서를 참조하세요.

세그먼트 쿼리

특정 리소스에 대해 선택한 속성 외에도 관련 세그먼트를 쿼리할 수 있습니다.

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

측정항목 쿼리와 마찬가지로 이 쿼리에서는 상태가 PAUSED이고 노출수가 1,000회를 초과하는 캠페인만 필터링합니다. 하지만 이 쿼리는 날짜별로 데이터를 분류합니다. 이렇게 하면 각 캠페인 GoogleAdsRow와 날짜 Segment를 나타내는 결과가 생성됩니다. 분류 기준을 사용하면 선택한 측정항목을 분할하여 SELECT 절의 각 세그먼트별로 그룹화할 수 있습니다.

쿼리 가능한 세그먼트 목록은 Segments 문서를 참고하세요.

특정 리소스의 쿼리에서 가능한 경우 다른 관련 리소스와 조인할 수 있습니다. 이러한 관련 리소스를 '기여 리소스'라고 합니다. 쿼리에서 속성을 선택하면 기여 분석 리소스를 암시적으로 조인할 수 있습니다.

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

이 쿼리는 캠페인 속성을 선택할 뿐만 아니라 선택한 각 캠페인에서 관련 속성도 가져옵니다. 결과 GoogleAdsRow는 각각 선택된 캠페인 속성과 선택한 입찰 전략 속성 bidding_strategy.name으로 채워진 campaign 객체를 나타냅니다.

캠페인 쿼리에 사용할 수 있는 기여 분석 리소스를 알아보려면 Campaign 참조 문서를 확인하세요.

쿼리 결과에 따라 변형

지정된 리소스를 쿼리할 때 즉시 반환된 결과를 객체로 가져와서 수정한 다음 해당 리소스의 서비스에 있는 변형 메서드로 다시 보낼 수 있습니다. 다음은 샘플 워크플로입니다.

  1. 현재 PAUSED 상태이며 노출수가 1,000회 이상인 모든 캠페인에 쿼리를 실행합니다.
  2. 응답에서 각 GoogleAdsRowcampaign 필드에서 Campaign 객체를 가져옵니다.
  3. 각 캠페인의 상태를 PAUSED에서 ENABLED(으)로 변경합니다.
  4. 수정된 캠페인으로 CampaignService.MutateCampaigns를 호출하여 업데이트합니다.

필드 메타데이터

GoogleAdsFieldService로 전송된 쿼리는 필드 메타데이터를 검색하기 위한 것입니다. 이 정보는 쿼리에서 필드를 함께 사용하는 방법을 이해하는 데 사용할 수 있습니다. API에서 데이터를 사용할 수 있고 데이터를 검증하거나 쿼리를 빌드하는 데 필요한 메타데이터를 제공하므로 개발자는 이를 통해 프로그래매틱 방식으로 그렇게 할 수 있습니다. 메타데이터에 대한 일반적인 쿼리는 다음과 같습니다.

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

이 쿼리에서 <INSERT_RESOURCE_OR_FIELD>를 리소스 (예: customer 또는 campaign)나 필드 (예: campaign.id, metrics.impressions, ad_group.id)로 바꿀 수 있습니다.

쿼리 가능한 필드 목록은 GoogleAdsField 문서를 참조하세요.

코드 예

클라이언트 라이브러리에는 GoogleAdsService에서 Google Ads 쿼리 언어를 사용하는 예가 있습니다. 기본 작업 폴더에는 GetCampaigns, GetKeywords, SearchForGoogleAdsFields와 같은 예가 있습니다. reporting 폴더에는 GetKeywordStats 예가 있습니다.