Sorgu yapısı

Metrik ve segment alanlarına yönelik sorgular reports.search yöntemine gönderilebilir. Merchant Center Sorgu Dili'nde bir sorgu oluşturmak için önce sorguyu dil dil bilgisini kullanarak oluşturmanız gerekir. Sorgu, bir dizi yan tümceden oluşur:

  • SELECT
  • FROM
  • WHERE
  • ORDER BY
  • LIMIT

Maddeler, istediğiniz verileri seçmenize yardımcı olmak için alan adları, tablo adları, operatörler, koşullar ve siparişleri kullanır. Birleştirildikten sonra Google Content API for Shopping kullanılarak bir istek gönderilebilir. Her yan tümcenin nasıl kullanılabileceğine bakalım.

Maddeler

SELECT

SELECT ifadesi, istekte getirilecek bir alan grubunu belirtir. SELECT, segment alanlarının ve metriklerin virgülle ayrılmış bir listesini alıp yanıttaki değerleri döndürür. SELECT koşulu bir sorguda zorunludur.

Aşağıda, belirli bir tablodan tıklama metriklerini seçen örnek bir sorgu verilmiştir:

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 yan tümcesinde bazı alanlara izin verilmez:

  • En az bir metrik alanı olmayan segment alanları sorgulanıyor.

Yukarıdaki koşulla ilgili bilgiler referans belgelerimizde bulunabilir.

FROM

FROM ifadesi, istekte verilerin alınacağı tabloyu belirtir. FROM yan tümcesindeki tablo, belirli bir sorgu için diğer tüm yan tümceler tarafından hangi alanların kullanılabileceğini tanımlar. FROM yan tümcesinde yalnızca bir tablo belirtilebilir. Şu anda yalnızca MerchantPerformanceView tablosu desteklenmektedir. FROM koşulu, reports hizmetindeki search yöntemine yapılan bir sorguda zorunludur.

WHERE

WHERE ifadesi, istek için verileri filtrelerken uygulanacak koşulları belirtir. WHERE ifadesini kullanırken, bunları ayırmak için AND ile bir veya daha fazla koşul belirtilebilir. Her koşul field_name Operator value kalıbına uymalıdır. WHERE yan tümcesinde tüm segmentler alanı kullanılabilir ancak WHERE ifadesinde kullanılması için metrik alanlarının SELECT yan tümcesinde belirtilmesi gerekir. Performans verilerinizin döndürülmesini istediğiniz tarih aralığını daima belirtmeniz gerektiğinden, sorgularda WHERE deyimi zorunludur.

Aşağıda, belirli bir dönemdeki metrikleri döndürmek için WHERE kullanımına ö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, SHOPPING_ADS programı için teklif başına tıklama sayısını döndürür. Bu değer, belirtilen 30 günlük dönemde tıklama sayısının 100'den fazla olduğu anlamına gelir.

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 değerinin seçildiğini göreceksiniz. segments.date öğesini seçip seçmediğinizden bağımsız olarak, performans verilerinin alınması için WHERE yan tümcesinde 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 sırasında 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 dil dil bilgisi bölümüne bakın.

ORDER BY

ORDER BY deyimi, sonuçların döndürüleceği sırayı belirtir. Böylece, verileri alan adına göre artan veya azalan düzende düzenleyebilirsiniz. Her sipariş, bir field_name ve ardından ASC veya DESC ile belirtilir. ASC veya DESC belirtilmezse sıra varsayılan olarak ASC olur. ORDER BY yan tümcesinde yalnızca SELECT yan tümcesinde belirtilen alanlar kullanılabilir. ORDER BY yan tümcesi bir 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ış liste kullanarak ORDER BY yan tümcesinde birden çok alan belirtebilirsiniz. Sıralama, sorguda belirtilen sırayla gerçekleşir. Örneğin, bu sorguda sonuçlar offer_id sütununa göre artan düzende, ardından gösterim sayısına göre azalan düzende ve tıklama sayısına göre büyükten küçüğe 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

SINIR

LIMIT yan tümcesi, döndürülecek sonuç sayısını belirtmenize olanak tanır. Bu, yalnızca özetle ilgileniyorsanız yararlıdır.

Örneğin, aşağıdaki sorguyla ilgili toplam sonuç sayısını kısıtlamak için LIMIT 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