Metrik ve segment alanlarıyla ilgili sorgular reports.search
yöntemine gönderilebilir. Merchant Center Sorgu Dili'nde bir sorgu oluşturmak için önce dil gramerini kullanarak sorguyu oluşturmanız gerekir.
Bir sorgu, çeşitli ifadelerden oluşur:
SELECT
FROM
WHERE
ORDER BY
LIMIT
Yan tümceler, istediğiniz verileri seçmenize yardımcı olmak için alan adlarını, tablo adlarını, operatörleri, koşulları ve sıralamaları kullanır. Tek bir sorguda birleştirildikten sonra Google Content API for Shopping kullanılarak istekte bulunulabilir. Her bir maddenin nasıl kullanılabileceğine göz atalım.
Maddeler
SEÇ
SELECT
ifadesi, istekte getirilecek bir alan grubunu belirtir. SELECT
Segment alanlarının ve metriklerin virgülle ayrılmış bir listesini alır ve yanıttaki değerleri döndürür. Sorguda SELECT
ifadesi zorunludur.
Belirli bir tablodan tıklama metriklerini seçen örnek bir sorguyu aşağıda bulabilirsiniz:
SELECT
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
Tek bir istekte farklı alan türlerini de sorgulayabilirsiniz:
SELECT
segments.date,
segments.program,
metrics.impressions,
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
Segment alanları
segments.date
segments.program
Metrikler
metrics.impressions
metrics.clicks
Aşağıdaki kısıtlama nedeniyle SELECT
maddesinde bazı alanlara izin verilmez:
- En az bir metrik alanı olmadan segment alanlarına sorgu gönderme.
Yukarıdaki koşulla ilgili bilgilere referans dokümanlarımızdan ulaşabilirsiniz.
FROM
FROM
ifadesi, istekte verilerin getirileceği tabloyu belirtir. FROM
ifadesindeki tablo, belirli bir sorgu için diğer tüm ifadeler tarafından hangi alanların kullanılabileceğini tanımlar. FROM
ifadesinde yalnızca tek bir tablo belirtilebilir. Şu anda yalnızca MerchantPerformanceView tablosu desteklenmektedir.
FROM
ifadesi, reports
hizmetindeki search
yöntemine yapılan sorgularda zorunludur.
WHERE
WHERE
ifadesi, istek için veriler filtrelenirken uygulanacak koşulları belirtir. WHERE
ifadesi kullanılırken bir veya daha fazla koşul belirtilebilir. Koşulları ayırmak için AND
kullanılır. Her koşul, field_name Operator value
kalıbına uygun olmalıdır. WHERE
ifadesinde herhangi bir segment alanı kullanılabilir ancak metrik alanlarının WHERE
ifadesinde kullanılabilmesi için SELECT
ifadesinde belirtilmesi gerekir. Performans verilerinizin döndürülmesini istediğiniz tarih aralığını her zaman belirtmeniz gerektiğinden WHERE
ifadesi sorguda zorunludur.
Aşağıda, belirli bir dönemdeki metrikleri döndürmek için WHERE
kullanımına dair bir örnek verilmiştir:
SELECT
segments.offer_id,
metrics.impressions
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
Verileri filtrelemek için birden fazla koşulu birleştirebilirsiniz. Bu örnek, verilen 30 günlük dönemde tıklama sayısı 100'den fazla olan SHOPPING_ADS programı için teklif başına tıklama sayısını döndürür.
SELECT
segments.offer_id,
segments.program,
metrics.clicks
FROM MerchantPerformanceView
WHERE metrics.clicks > 100
AND segments.program = SHOPPING_ADS
AND segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’;
Aşağıdaki sorguda segments.date
seçildiğini göreceksiniz.
segments.date
seçip seçmediğinizden bağımsız olarak, performans verilerinin alınması için WHERE
ifadesinde her zaman sınırlı bir tarih aralığı sağlanmalıdır.
SELECT
segments.date,
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
Filtreleme yaparken operatörünüzün büyük/küçük harfe duyarlılığını göz önünde bulundurmanız önemlidir.
Operatörlerin tam listesi için dilbilgisi bölümüne bakın.
ORDER BY
ORDER BY
ifadesi, sonuçların döndürüleceği sırayı belirtir. Bu sayede, verileri bir alan adına göre artan veya azalan düzende düzenleyebilirsiniz. Her sıralama, field_name
olarak belirtilir ve ardından ASC
veya DESC
gelir. ASC
veya DESC
belirtilmezse varsayılan olarak ASC
sırası kullanılır. ORDER BY
ifadesinde yalnızca SELECT
ifadesinde belirtilen alanlar kullanılabilir. ORDER BY
ifadesi sorguda isteğe bağlıdır.
Aşağıdaki sorgu, döndürülen satırları tıklama sayısına göre en yüksekten en düşüğe doğru sıralar:
SELECT
segments.offer_id,
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
ORDER BY metrics.clicks DESC
Virgülle ayrılmış bir liste kullanarak ORDER BY
ifadesinde birden fazla alan belirtebilirsiniz. Sıralama, sorguda belirtilen sırayla yapılır.
Örneğin, bu sorguda sonuçlar önce offer_id
'ya göre artan düzende, ardından gösterim sayısına göre azalan düzende, son olarak da tıklama sayısına göre azalan düzende sıralanır:
SELECT
segments.offer_id,
metrics.impressions,
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
ORDER BY
segments.offer_id,
metrics.impressions DESC,
metrics.clicks DESC
SINIRLAMA
LIMIT
ifadesi, döndürülecek sonuç sayısını belirtmenize olanak tanır.
Bu, yalnızca bir özetle ilgileniyorsanız yararlı olur.
Örneğin, LIMIT
, aşağıdaki sorgunun toplam sonuç sayısını sınırlamak için kullanılabilir:
SELECT
segments.program,
segments.offer_id,
metrics.impressions
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
ORDER BY metrics.impressions DESC
LIMIT 50