# Sample queries

This page collects some SQL code snippets that show how to use the different
fields, metrics, segments and resources. You can use these queries as is or as
starting points on for constructing your own customized queries.

## Campaign

    SELECT
      campaign.name,
      campaign_budget.amount_micros,
      campaign.status,
      campaign.advertising_channel_type,
      metrics.clicks,
      metrics.impressions,
      metrics.ctr,
      metrics.average_cpc,
      metrics.cost_micros,
      campaign.bidding_strategy_type
    FROM campaign
    WHERE segments.date DURING LAST_7_DAYS
      AND campaign.status != 'REMOVED'

## Ad Group

    SELECT
      ad_group.name,
      campaign.name,
      ad_group.status,
      ad_group.type,
      metrics.clicks,
      metrics.impressions,
      metrics.ctr,
      metrics.average_cpc,
      metrics.cost_micros
    FROM ad_group
    WHERE segments.date DURING LAST_7_DAYS
      AND ad_group.status != 'REMOVED'

## Ad Group Ad

    SELECT
      ad_group_ad.ad.expanded_text_ad.headline,
      ad_group_ad.ad.expanded_text_ad.headline2,
      ad_group_ad.ad.expanded_text_ad.headline3,
      ad_group_ad.ad.final_urls,
      ad_group_ad.ad.expanded_text_ad.description1,
      ad_group_ad.ad.expanded_text_ad.description2,
      campaign.name,
      ad_group.name,
      ad_group_ad.ad.type,
      metrics.clicks,
      metrics.impressions,
      metrics.ctr,
      metrics.average_cpc,
      metrics.cost_micros
    FROM ad_group_ad
    WHERE segments.date DURING LAST_7_DAYS
      AND ad_group_ad.status != 'REMOVED'

## Keywords

    SELECT
      ad_group_criterion.keyword.text,
      campaign.name,
      ad_group.name,
      ad_group_criterion.keyword.match_type,
      ad_group_criterion.final_urls,
      metrics.clicks,
      metrics.impressions,
      metrics.ctr,
      metrics.average_cpc,
      metrics.cost_micros
    FROM keyword_view
    WHERE segments.date DURING LAST_7_DAYS
      AND ad_group_criterion.status != 'REMOVED'

## Age (Demographics)

    SELECT
      ad_group_criterion.age_range.type,
      campaign.name,
      ad_group.name,
      ad_group_criterion.bid_modifier,
      metrics.clicks,
      metrics.impressions,
      metrics.ctr,
      metrics.average_cpc,
      metrics.cost_micros,
      campaign.advertising_channel_type
    FROM age_range_view
    WHERE segments.date DURING LAST_7_DAYS

## Gender (Demographics)

    SELECT
      ad_group_criterion.gender.type,
      campaign.name,
      ad_group.name,
      ad_group_criterion.bid_modifier,
      metrics.clicks,
      metrics.impressions,
      metrics.ctr,
      metrics.average_cpc,
      metrics.cost_micros,
      campaign.advertising_channel_type
    FROM gender_view
    WHERE segments.date DURING LAST_7_DAYS

## How to look up geo constants

Use [location_view](https://developers.google.com/search-ads/reporting/api/reference/fields/v0/location_view) resource to get a
geo_target_constant ID.

    SELECT
      campaign.name,
      campaign.id,
      campaign_criterion.criterion_id,
      campaign_criterion.location.geo_target_constant,
      location_view.resource_name,
      metrics.cost_micros,
      metrics.impressions,
      metrics.cost_micros
    FROM
      location_view
    WHERE
      segments.date DURING LAST_7_DAYS

Note that the API returns locations by their criterion IDs.
To get their display names, use the API to query the
[geo_target_constant](https://developers.google.com/search-ads/reporting/api/reference/fields/v0/geo_target_constant) resource.

    SELECT
      geo_target_constant.canonical_name,
      geo_target_constant.country_code,
      geo_target_constant.id,
      geo_target_constant.name,
      geo_target_constant.status,
      geo_target_constant.target_type
    FROM geo_target_constant
    WHERE geo_target_constant.resource_name = 'geoTargetConstants/1014044'