Bir sorgu, bir dizi ifadeden oluşur: SELECT
,
FROM
,
WHERE
,
ORDER BY
,
LIMIT
,
ve PARAMETERS
.
Maddeler; alan adlarını, kaynak adlarını, operatörleri, koşulları, ve sıralamalar tek bir sorgu isteğinde birleştirilir.
Temel terimlerle, bir sorgu oluşturmak için:
- Verilerin alınacağı kaynağı belirtin.
- Döndürmek istediğiniz verileri tanımlamak için alanlar ve metrikler ekleyin.
- Sonuçlarınızı gruplandırmak için segmentler ekleyin.
- İlgili kaynak verilerini dolaylı olarak birleştirmek için ilişkilendirilen kaynakları ekleyin.
- Sonuçlarınızı filtreleme, sıralama ve sınırlama.
SELECT
koşulu
SELECT
ifadesi:
- Sorgudaki zorunlu bir ifadedir.
- İstekte getirilecek alan grubunu belirtir.
- Kaynak alanları, özel sütunlar ve özel sütunların virgülle ayrılmış listesini alır ve ilgili Floodlight değişkenlerini, segment alanlarını ve metriklerini gösterir ve tıklayın.
Bu örnek sorguda, campaign
özelliklerinin nasıl seçileceği gösterilmektedir
kaynak:
SELECT
campaign.id,
campaign.name
FROM campaign
Birden fazla alan türü
Aynı istekte farklı alan türleri isteyebilirsiniz.
Aşağıdaki örnek sorgu, şunları içeren tek bir sorguyu gösterir:
- Kaynak alanları:
campaign.id
,campaign.name
,bidding_strategy.id
vebidding_strategy.name
. - Segment alanları:
segments.device
vesegments.date
. - Metrik alanları:
metrics.impressions
vemetrics.clicks
.
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
Segmentasyon bölümünü inceleyin. bölümünü ziyaret edin.
Ana kaynak alanı
Genellikle ana kaynak alanınızı SELECT
bölümüne dahil edersiniz.
ifadesini ekleyin, ancak bu isteğe bağlıdır (zorunlu değildir).
Bu örnek sorguda yalnızca filtre uygulamak için bir ana kaynak alanı (ad_group.status
) kullanılıyor
daha iyi olur.
SELECT campaign.id
FROM ad_group
WHERE ad_group.status = PAUSED
Özel Floodlight değişkenleri
SELECT yan tümcesine özel Floodlight değişkenlerini eklemek için kimlikleri.
Bu örnekte, sorgu kampanya kaynağı.
SELECT
conversion_custom_metrics.id[123454321]
FROM campaign
SELECT
conversion_custom_dimensions.id[123454321]
FROM campaign
Özel sütunlar
SELECT yan tümcesine kimliklerini kullanarak özel sütunlar ekleyebilirsiniz.
Bu örnekte, sorgu kampanya kaynağı.
SELECT
custom_columns.id[12345678]
FROM campaign
Özel sütun kimliklerini nasıl alacağınızı öğrenin.
Metrik alanları
Belirli bir kaynak için, diğerlerini eklemeden metrik alanlarını seçebilirsiniz
SELECT
yan tümcesindeki kaynaktan alan alanlarını içerir.
Bu örnek sorguda campaign
için impressions
ve clicks
metrikleri seçilir
gösterir.
SELECT
metrics.impressions,
metrics.clicks
FROM campaign
Ayrıntılı bilgi için metrics
adresini ziyaret edin.
sorgularınızda kullanabileceğiniz metrik alanlarının listesini içerir.
Segment alanları
Eşlik eden kaynak alanlarını belirtmeden segment alanlarını seçebilirsiniz
SELECT
ifadesindeki metrikleri veya metrikleri değiştirebilirsiniz.
Bu örnek sorgu, sonuçları cihaza göre segmentlere ayırır.
SELECT segments.device
FROM campaign
Ayrıntılı bilgi için segments
adresini ziyaret edin.
segment alanlarının listesine göz atın.
Yasaklı alanlar
SELECT
yan tümcesinde aşağıdaki alanları kullanamazsınız:
- Seçilemeyen alanlar, yani
Selectable
meta verileri içeren alanlar özelliğifalse
olarak işaretlendi. - Yinelenen alanlar, yani
Repeated
meta veri özelliğine sahip alanlartrue
olarak işaretlendi. FROM
ifadesinde belirtilen kaynak için kullanılamayan alanlar. Bazı kaynakların özellikleri birlikte seçilemez. Yalnızca bazı kaynaklar tüm metriklerin ve segmentlerin bir alt kümesini kullanılabilir hale getirir.- Uyumsuz segmentler veya metrikler. Daha fazla bilgi için Segmentasyon bölümüne bakın ekleyebilirsiniz.
Aşağıdakiler için Referans belgelerine bakın: bu bilgileri nerede bulabileceğinize dair ayrıntılar.
FROM koşulu
FROM
ifadesi:
- Sorgu için zorunlu bir ifadedir
SearchAds360Service
(Search
veSearchStream
yöntemleri). SearchAds360FieldService
sorgularına dahil edilmemelidir.- Sorgunun döndürdüğü ana kaynağı belirtir.
- Yalnızca tek bir kaynak belirtilebilir.
- Sorgudaki diğer tüm yan tümcelerde kullanabileceğiniz alanları tanımlar.
İlişkilendirilmiş kaynaklar
İlişkilendirilen kaynaklar varsa
FROM
ifadesinde belirttiğiniz kaynaktır. Yalnızca özelliklerini eklemeniz gerekir
değerini döndürmek için SELECT
ifadesini kullanın.
Bu örnek sorgu hem reklam grubu kimliğini hem de kampanya kimliğini döndürür, çünkü
campaign
, ad_group
kaynağının ilişkilendirilen bir kaynağıdır.
SELECT
campaign.id,
ad_group.id
FROM ad_group
resource_name
alanı
FROM
yan tümcesindeki ana kaynağın resource_name
alanı her zaman
geri döndü.
Bu örnek sorguda, yanıta ad_group.resource_name
dahil edilecektir.
sorguda açıkça seçilmemiş olsa bile:
SELECT ad_group.id
FROM ad_group
İlişkilendirilen kaynağın resource_name
alanı:
en az bir alan seçildiğinde döndürülür.
Bu örnek sorguda, campaign.resource_name
campaign.id
seçildiği için yanıt:
SELECT
campaign.id,
ad_group.id
FROM ad_group
WHERE koşulu
WHERE
ifadesi:
- Sorgudaki isteğe bağlı bir ifadedir.
- İstek için verileri filtreleme ve segmentlere ayırma koşullarını belirtir.
Koşullar şu kalıbı takip ediyor:
FIELD_NAME
OPERATOR
VALUE
(ayrıca: boşluk) ekleyin. AND
ayırıcıyla ayrılmış birden fazla koşul içerebilir.
Bu örnek sorguda, impressions
döndürmek için WHERE
ifadesinin nasıl kullanılacağı gösterilmektedir
belirli bir dönemdeki metrikler:
SELECT
campaign.id,
campaign.name,
metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
Segmentasyon bölümünü inceleyin. bölümünü ziyaret edin.
Tarih belirtme hakkında daha fazla bilgi edinmek için Tarih aralıkları bölümüne bakın aralıklarında görünür.
resource_name
alanına göre filtrele
Verileri filtrelemek veya sıralamak için resource_name
alanını kullanabilirsiniz.
Bu örnek sorguda, sonuçları filtrelemek için campaign.resource_name
alanı kullanılmaktadır
elde edilir:
SELECT
campaign.id,
campaign.name
FROM campaign
WHERE campaign.resource_name = 'customers/1234567/campaigns/987654'
Birden fazla koşul
Verilerinizi filtrelemek için birden fazla koşulu birleştirebilirsiniz.
Bu örnek sorgu, tüm kampanyalar için clicks
metriğinin sayısını istiyor.
son 30 günde mobil cihazlarda impressions
metrikle.
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
Segmentasyon bölümünü inceleyin. bölümünü ziyaret edin.
Büyük/küçük harfe duyarlılık
Dize değerlerine göre filtre uygulanırken her operatörün varsayılan büyük/küçük harf duyarlılığı sonuçlarınızın doğru şekilde filtrelenmesinde önemli bir rol oynar.
Aşağıdaki tabloda her operatörün varsayılan büyük/küçük harfe duyarlılığı gösterilmektedir.
Varsayılan büyük/küçük harfe duyarlılık | |
---|---|
=/!= |
Case sensitive |
IN/NOT IN |
Case sensitive |
LIKE/NOT LIKE |
Case insensitive |
CONTAINS (...) |
Case sensitive |
REGEXP_MATCH/NOT REGEXP_MATCH |
Case sensitive |
Şu öğelerin varsayılan hassasiyetini değiştirmek için (?i)
değiştiriciyi kullanabilirsiniz:
REGEXP_MATCH
ve NOT REGEXP_MATCH
, büyük/küçük harfe duyarlı değildir, örneğin:
SELECT campaign.id
FROM campaign
WHERE campaign.name REGEXP_MATCH "(?i).*test.*"
Aşağıdakilerin tam listesi için Sorgu dil bilgisi referansı bölümüne bakın verilerinizi filtrelemek için kullanabileceğiniz operatörler.
Temel tarih segmentleri
Aşağıdaki segment alanları temel tarih segmentleri olarak bilinir:
segments.date
, segments.week
, segments.month
, segments.quarter
ve
segments.year
.
Tarih veya saat belirtmek için WHERE
ifadenizde temel tarih segmentlerini kullanabilirsiniz
geçerlidir.
Bu örnek sorgu, segments.date
alanı için DURING LAST_30_DAYS
değerini belirtiyor
WHERE
ifadesinde:
SELECT
campaign.id,
campaign.name,
segments.date,
metrics.clicks
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
Bkz. Segmentasyon > Ayrıntılı bilgi için temel tarih segmentleri temel tarih segmentlerini kullanma hakkında bilgi edinin.
Yasaklanmış filtreleme
Filtrelemeye izin verilmez:
- Temel tarih segmentleri hariç, seçili olmayan segment alanlarında.
- Temel öğeler hariç her türlü mesaj türünde (örneğin,
Int64Value
,StringValue
vb.). - Temel öğeler hariç, herhangi bir mesaj türündeki tekrarlanan alanların özelliklerinde
(örneğin,
Int64Value
,StringValue
vb.).
ORDER BY koşulu
ORDER BY
ifadesi:
- Sorgudaki isteğe bağlı bir ifadedir.
- Sonuçların döndürülme sırasını belirtir. Sıralama buna göre yapılır
desen:
FIELD_NAME
ORDERING_OPTION
(boşlukla ayrılmış). - İki seçeneğe izin verir:
ASC
(artan) veyaDESC
(azalan). Varsayılan değer: artan sırada.
Bu örnek sorgu, kampanyaları tıklama sayısına göre azalan düzende sıralar (en yüksekten en düşüğe):
SELECT
campaign.name,
metrics.clicks
FROM campaign
ORDER BY metrics.clicks DESC
Birden fazla sipariş
Virgülle ayrılmış değer kullanarak ORDER BY
yan tümcesinde birden çok alan belirtebilirsiniz
liste'ye dokunun. Sonuçlar
emin olun.
Bu örnek sorgu, reklam grubu verilerini seçer ve sonuçları artan düzende sıralar kampanya adına göre, daha sonra gösterim sayısına göre azalan düzende sıralayarak ve tıklama sayısına göre azalan düzende sıralanır:
SELECT
campaign.name,
ad_group.name,
metrics.impressions,
metrics.clicks
FROM ad_group
ORDER BY
campaign.name,
metrics.impressions DESC,
metrics.clicks DESC
Sipariş ve limiti birleştirin
Şu işlemler için ORDER BY
ifadesini LIMIT
ifadesiyle birlikte kullanabilirsiniz:
sonuçlarınızı hassaslaştırın.
Bu örnek sorgu, şu süre kadar en yüksek gösterime sahip beş kampanyayı döndürür: son 30 gün:
SELECT
campaign.id,
campaign.name,
metrics.impressions
FROM campaign
WHERE segments.date DURING LAST_30_DAYS
ORDER BY metrics.impressions DESC
LIMIT 5
Yasak sipariş
Sıralamaya izin verilmez:
- Seçili olmayan kaynakların özelliklerine göre.
- Seçilmeyen metriklere göre.
- Seçilmeyen segmentlere göre.
- Bu alan türleri için:
MESSAGE
- Yinelenen alanlar
- Yinelenen alanların özellikleri.
LIMIT koşulu
LIMIT
ifadesi:
- Sorgudaki isteğe bağlı bir ifadedir.
- Sorgunun döndürdüğü sonuç sayısını sınırlamanıza olanak tanır.
Bu ifade yalnızca bir örnekle veya yalnızca tek bir örnekle ya da ve özet içerir.
Bu örnek sorguda toplam sonuç sayısı 50 ile sınırlandırılmıştır:
SELECT
campaign.name,
ad_group.name,
segments.device,
metrics.impressions
FROM ad_group
ORDER BY metrics.impressions DESC
LIMIT 50
PARAMETERS koşulu
PARAMETERS
ifadesi, istek için meta parametreleri belirtmenize olanak tanır.
Taslakları dahil et
include_drafts
parametresi, taslak öğelerin
daha iyi olur. Varsayılan değer: false
. Taslak öğeleri eklemek için bunu true
olarak ayarlayın.
Şu örnek sorgu hem taslak kampanyaları hem de normal kampanyaları döndürür:
SELECT campaign.name
FROM campaign
PARAMETERS include_drafts=true
Seçimi atla: resource_name
omit_unselected_resource_names
parametresi,
açıkça istenmeyen tüm kaynakların resource_name
alanı
SELECT
ifadesi. Varsayılan değer: false
. Bu parametreyi true
olarak ayarlarsanız
birincil kaynağın kaynak adını açıkça istemeniz önerilir:
ve SELECT
ibarenizdeki ilişkilendirilen kaynaklar.
Bu örnek sorgu, ne campaign.resource_name
ne de
customer.resource_name
alanı, SELECT
kapsamında değildir
ifade:
SELECT
campaign.name,
customer.id
FROM campaign
PARAMETERS omit_unselected_resource_names = true
Bu örnek sorgu, campaign.resource_name
alanını döndürür çünkü
SELECT
yan tümcesinde açıkça istendi:
SELECT
campaign.name,
campaign.resource_name
FROM campaign
PARAMETERS omit_unselected_resource_names = true
Metriklerde kullanılan para birimini değiştirme
metrics_currency
parametresi, kullanılacak para birimini belirtmenizi sağlar
dahil edilir.SELECT
Varsayılan ayar, hesabın yerel para birimidir. Bu
parametresi için ISO 4217 3 karakterli para birimi kodunu kullanmanız gerekir.
Örneğin: USD, EUR.
Bu örnek sorgu, maliyet_micros metriğini hesap.
SELECT
campaign.name,
metrics.cost_micros
FROM campaign
WHERE segments.date >= "2018-08-15"
AND segments.date < "2018-08-16"
Bu örnek sorgu, Şili pesosu (CLP) cinsindencost_micros metriğini döndürür.
SELECT
campaign.name,
metrics.cost_micros
FROM campaign
WHERE segments.date >= "2018-08-15"
AND segments.date < "2018-08-16"
PARAMETERS metrics_currency = "CLP"