Kueri untuk kolom resource, segmen, dan metrik dapat dikirim ke
GoogleAdsService
Penelusuran atau SearchStream
metode. Untuk membuat kueri dalam Bahasa Kueri Google Ads, Anda harus membuatnya menggunakan
tata bahasa bahasa. Sebuah kueri terdiri dari sejumlah
klausa:
SELECT
FROM
WHERE
ORDER BY
LIMIT
PARAMETERS
Klausa menggunakan nama kolom, nama resource, operator, kondisi, dan pemesanan untuk membantu Anda memilih data yang benar. Setelah digabungkan menjadi satu permintaan, permintaan dapat dibuat menggunakan Google Ads API.
Klausul
Video: Kompatibilitas Kolom GAQL
PILIH
Klausa SELECT
menentukan kumpulan kolom yang akan diambil dalam permintaan.
SELECT
mengambil daftar yang dipisahkan koma untuk kolom resource, kolom segmen,
dan metrik, yang menampilkan nilai dalam respons. Klausul SELECT
adalah
wajib dalam kueri.
Contoh kueri di bawah ini menunjukkan contoh pemilihan atribut untuk referensi:
SELECT
campaign.id,
campaign.name
FROM campaign
Anda dapat meminta jenis kolom yang berbeda dalam satu permintaan, misalnya:
SELECT
campaign.id,
campaign.name,
bidding_strategy.id,
bidding_strategy.name,
segments.device,
segments.date,
metrics.impressions,
metrics.clicks
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
Kolom resource
campaign.id
campaign.name
Kolom resource
bidding_strategy.id
bidding_strategy.name
Kolom segmen
segments.device
segments.date
Metrik
metrics.impressions
metrics.clicks
Beberapa kolom mungkin tidak diizinkan dalam klausa SELECT
karena hal berikut
batasan:
- Membuat kueri kolom yang tidak dapat dipilih. {i>Field<i} ini akan memiliki
Atribut metadata
Selectable
ditandai sebagaifalse
. - Memilih atribut kolom berulang. {i>Field<i} ini akan memiliki
Atribut metadata
isRepeated
ditandai sebagaitrue
. - Memilih kolom yang tidak tersedia untuk resource tertentu di
FROM
. Atribut dari sebagian resource tidak dapat dipilih bersamaan, hanya dari semua metrik dan segmen akan tersedia untuk referensi di KlausaFROM
. - Memilih segmen atau metrik yang tidak kompatibel satu sama lain. Sebagai informasi selengkapnya tentang hal ini, bagian segmentasi.
Informasi yang terkait dengan ketentuan di atas dapat ditemukan dalam dokumen referensi kami
atau dari GoogleAdsFieldService
.
FROM
Klausa FROM
menentukan resource utama yang akan ditampilkan. Tujuan
resource dalam klausa FROM
menentukan kolom yang dapat digunakan
klausa untuk
kueri yang ditentukan. Hanya satu resource yang dapat ditentukan dalam
Klausa FROM
. Klausa FROM
diperlukan dalam kueri untuk
GoogleAdsService
Penelusuran atau SearchStream
metode, tetapi tidak boleh ditetapkan saat menggunakan
GoogleAdsFieldService
.
Meskipun hanya boleh terdapat 1 resource dalam klausa FROM
untuk kueri tertentu, kolom
dari Resource yang Diatribusikan mungkin juga tersedia. Resource ini
secara implisit bergabung dengan resource dalam klausa FROM
, sehingga Anda hanya perlu
tambahkan atributnya ke klausa SELECT
untuk menampilkan nilainya. Tidak semua
resource memiliki Resource yang Diatribusikan. Pada contoh berikut, Anda dapat meminta
ID grup iklan dan ID kampanye dari grup iklan:
SELECT
campaign.id,
ad_group.id
FROM ad_group
Kolom resource_name
dari resource utama selalu ditampilkan.
Pada contoh berikut, ad_group.resource_name
akan disertakan dalam
respons meskipun tidak dipilih secara eksplisit dalam kueri:
SELECT ad_group.id
FROM ad_group
Hal yang sama berlaku untuk resource lain saat setidaknya satu kolom dipilih.
Misalnya: campaign.resource_name
akan disertakan dalam respons untuk
kueri berikut:
SELECT
campaign.id,
ad_group.id
FROM ad_group
WHERE
Klausa WHERE
menentukan kondisi yang akan diterapkan saat memfilter data untuk
permintaan. Saat menggunakan klausa WHERE
, satu atau beberapa kondisi dapat ditentukan
menggunakan AND
untuk memisahkannya. Setiap kondisi harus mengikuti pola
field_name Operator value
. Klausa WHERE
bersifat opsional dalam kueri.
Berikut adalah contoh penggunaan WHERE
untuk menampilkan metrik dari waktu tertentu
periode:
SELECT
campaign.id,
campaign.name,
metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
Anda dapat menggabungkan beberapa kondisi untuk memfilter data. Contoh ini akan meminta jumlah klik untuk semua kampanye dengan tayangan di seluler di dalam 30 hari terakhir.
SELECT
campaign.id,
campaign.name,
segments.device,
metrics.clicks
FROM campaign
WHERE metrics.impressions > 0
AND segments.device = MOBILE
AND segments.date DURING LAST_30_DAYS
Segmen dalam klausa WHERE
harus berada dalam klausa SELECT
, dengan
segmen tanggal berikut, yang disebut sebagai segmen tanggal inti,
menjadi pengecualian:
segments.date
segments.week
segments.month
segments.quarter
segments.year
Dalam kueri berikut, perhatikan bahwa segments.date
dipilih.
Karena segmen ini adalah segmen tanggal inti, maka memerlukan tanggal yang terbatas
rentang yang terdiri dari segmen tanggal inti dalam klausul WHERE
yang akan diberikan.
SELECT
campaign.id,
campaign.name,
segments.date,
metrics.clicks
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
Semua segmen yang memenuhi kondisi di atas adalah: segments.date, segments.week,
Segment.month, segments.quarter, dan segments.year. Jika salah satu segmen ini
dipilih, setidaknya salah satunya harus digunakan dalam klausa WHERE
.
Saat memfilter, kepekaan huruf besar/kecil operator Anda penting untuk diperhatikan saat ini. Lihat bagian Peka huruf besar/kecil untuk detail selengkapnya.
Untuk mengetahui daftar lengkap operator, lihat bahasa tata bahasa.
ORDER BY
Klausa ORDER BY
menentukan urutan hasil
dikembalikan. Hal ini memungkinkan Anda untuk mengatur data dalam urutan menaik atau menurun.
berdasarkan nama kolom. Setiap pengurutan ditetapkan sebagai field_name
yang diikuti dengan
ASC
atau DESC
. Jika ASC
atau DESC
tidak ditentukan, pesanan akan ditetapkan secara default
ke ASC
. Klausa ORDER BY
bersifat opsional dalam kueri.
Kueri berikut mengurutkan kampanye yang dihasilkan berdasarkan jumlah klik dari tertinggi ke terendah:
SELECT
campaign.name,
metrics.clicks
FROM campaign
ORDER BY metrics.clicks DESC
Anda dapat menentukan beberapa kolom dalam klausa ORDER BY
menggunakan karakter yang dipisahkan koma
daftar. Pengurutan akan terjadi pada urutan yang sama seperti yang ditentukan dalam kueri.
Misalnya, dalam kueri ini dengan memilih data grup iklan, hasilnya akan diurutkan
dalam urutan menaik menurut nama kampanye, lalu dalam urutan menurun berdasarkan jumlah
tayangan, lalu dalam urutan menurun berdasarkan jumlah klik:
SELECT
campaign.name,
ad_group.name,
metrics.impressions,
metrics.clicks
FROM ad_group
ORDER BY
campaign.name,
metrics.impressions DESC,
metrics.clicks DESC
LIMIT
Klausa LIMIT
memungkinkan Anda menentukan jumlah hasil yang akan ditampilkan.
Fungsi ini berguna jika Anda hanya tertarik pada ringkasan.
Misalnya, LIMIT
dapat digunakan untuk membatasi jumlah total hasil untuk
kueri berikut:
SELECT
campaign.name,
ad_group.name,
segments.device,
metrics.impressions
FROM ad_group
ORDER BY metrics.impressions DESC
LIMIT 50
PARAMETER
Klausa PARAMETERS
memungkinkan Anda menentukan parameter meta untuk permintaan.
Parameter ini dapat memengaruhi jenis baris yang ditampilkan.
Saat ini, parameter meta berikut didukung:
include_drafts
Tetapkan include_drafts
ke true
untuk memungkinkan entity draf ditampilkan.
Default-nya adalah false
.
Misalnya, kueri berikut mengambil kampanye draf bersama dengan kampanye kampanye:
SELECT campaign.name
FROM campaign
PARAMETERS include_drafts=true
omit_unselected_resource_names
Setel omit_unselected_resource_names
ke true
untuk mencegah nama resource
setiap jenis resource dalam respons yang ditampilkan, kecuali jika diminta secara eksplisit
dalam klausa SELECT
. Defaultnya adalah false
.
contoh removed_unselected_resource_names | |
---|---|
SELECT campaign.name, customer.id FROM campaign |
Returned resources: campaign.resource_name
omit_unselected_resource_names ditetapkan secara default ke false , sehingga
semua kolom resource_name ditampilkan.
|
SELECT campaign.name, customer.id FROM campaign PARAMETERS omit_unselected_resource_names = true |
Returned resources: Tidak ada. omit_unselected_resource_names ditetapkan sebagai true
serta campaign.resource_name dan customer.resource_name
bukan bagian dari klausa SELECT .
|
SELECT campaign.name, campaign.resource_name FROM campaign PARAMETERS omit_unselected_resource_names = true |
Returned resource: campaign.resource_name
omit_unselected_resource_names ditetapkan sebagai true
dan campaign.resource_name diminta sebagai bagian dari
Klausa SELECT .
|
Aturan bahasa tambahan
Selain contoh untuk setiap klausa, Bahasa Kueri Google Ads memiliki beberapa perilaku yang dapat dimanfaatkan:
Kolom resource utama tidak harus berada di
SELECT
untuk kueri. Misalnya, Anda mungkin hanya ingin menggunakan satu atau beberapa kolom resource untuk memfilter data:SELECT campaign.id FROM ad_group WHERE ad_group.status = PAUSED
Metrik dapat dipilih secara eksklusif untuk resource tertentu; tidak ada kolom lain dari resource diperlukan dalam kueri:
SELECT metrics.impressions, metrics.clicks, metrics.cost_micros FROM campaign
Kolom segmentasi dapat dipilih tanpa kolom resource yang menyertainya atau metrik:
SELECT segments.device FROM campaign
Kolom
resource_name
(misalnya,campaign.resource_name
) dapat berupa digunakan untuk memfilter atau mengurutkan data:SELECT campaign.id, campaign.name FROM campaign WHERE campaign.resource_name = 'customers/1234567/campaigns/987654'