Struktur kueri

Kueri untuk kolom metrik dan segmen dapat dikirim ke metode reports.search. Untuk membuat kueri di Bahasa Kueri Merchant Center, Anda harus menyusun kueri terlebih dahulu menggunakan tata bahasa. Kueri terdiri dari sejumlah klausa:

  • SELECT
  • FROM
  • WHERE
  • ORDER BY
  • LIMIT

Klausul menggunakan nama kolom, nama tabel, operator, kondisi, dan pengurutan untuk membantu Anda memilih data yang diinginkan. Setelah digabungkan menjadi satu kueri, permintaan dapat dibuat menggunakan Google Content API for Shopping. Mari kita lihat cara penggunaan setiap klausa.

Klausul

PILIH

Klausul SELECT menentukan sekumpulan kolom yang akan diambil dalam permintaan. SELECT mengambil daftar kolom segmen dan metrik yang dipisahkan koma, yang menampilkan nilai dalam respons. Klausa SELECT wajib ada dalam kueri.

Berikut adalah contoh kueri yang memilih metrik klik dari tabel tertentu:

SELECT
  metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN 2020-08-01 AND 2020-08-31

Anda juga dapat membuat kueri berbagai jenis kolom dalam satu permintaan:

SELECT
  segments.date,
  segments.program,
  metrics.impressions,
  metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN 2020-08-01 AND 2020-08-31
  • Kolom segmen

    • segments.date
    • segments.program
  • Metrik

    • metrics.impressions
    • metrics.clicks

Beberapa kolom tidak diizinkan dalam klausa SELECT karena batasan berikut:

  • Mengirim kueri kolom segmen tanpa setidaknya satu kolom metrik.

Informasi terkait kondisi di atas dapat ditemukan dalam dokumen referensi kami.

FROM

Klausa FROM menentukan tabel yang akan diambil datanya dalam permintaan. Tabel dalam klausa FROM menentukan kolom yang dapat digunakan oleh semua klausa lainnya untuk kueri tertentu. Hanya satu tabel yang dapat ditentukan dalam klausa FROM. Saat ini, hanya tabel MerchantPerformanceView yang didukung. Klausul FROM wajib ada dalam kueri ke metode search di layanan reports.

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. Kolom segmen apa pun dapat digunakan dalam klausa WHERE, tetapi kolom metrik harus ditentukan dalam klausa SELECT agar dapat digunakan dalam klausa WHERE. Klausul WHERE diperlukan dalam kueri, karena Anda harus selalu menentukan rentang tanggal untuk waktu yang Anda inginkan data performa ditampilkan.

Berikut adalah contoh penggunaan WHERE untuk menampilkan metrik dari jangka waktu tertentu:

SELECT
  segments.offer_id,
  metrics.impressions
FROM MerchantPerformanceView
WHERE segments.date BETWEEN 2020-08-01 AND 2020-08-31

Anda dapat menggabungkan beberapa kondisi untuk memfilter data. Contoh ini akan menampilkan jumlah klik per penawaran untuk program SHOPPING_ADS dengan klik > 100 dalam jangka waktu 30 hari tertentu.

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;

Dalam kueri berikut, Anda akan melihat bahwa segments.date dipilih. Terlepas dari apakah Anda memilih segments.date, rentang tanggal terbatas dalam klausa WHERE harus selalu diberikan untuk mengambil data performa.

SELECT
  segments.date,
  metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN 2020-08-01 AND 2020-08-31

Saat memfilter, kepekaan huruf besar/kecil operator penting untuk diingat.

Untuk mengetahui daftar lengkap operator, lihat tata bahasa.

ORDER BY

Klausa ORDER BY menentukan urutan hasil yang akan ditampilkan. Dengan begitu, Anda dapat mengatur data dalam urutan menaik atau menurun berdasarkan nama kolom. Setiap pengurutan ditentukan sebagai field_name yang diikuti dengan ASC atau DESC. Jika ASC maupun DESC tidak ditentukan, urutan defaultnya adalah ASC. Hanya kolom yang ditentukan dalam klausa SELECT yang dapat digunakan dalam klausa ORDER BY. Klausul ORDER BY bersifat opsional dalam kueri.

Kueri berikut mengurutkan baris yang ditampilkan berdasarkan jumlah klik dari yang tertinggi hingga terendah:

SELECT
  segments.offer_id,
  metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN 2020-08-01 AND 2020-08-31
ORDER BY metrics.clicks DESC

Anda dapat menentukan beberapa kolom dalam klausa ORDER BY menggunakan daftar yang dipisahkan koma. Pengurutan akan terjadi dalam urutan yang sama seperti yang ditentukan dalam kueri. Misalnya, dalam kueri ini, hasil akan diurutkan dalam urutan menaik berdasarkan offer_id, lalu dalam urutan menurun berdasarkan jumlah tayangan, lalu dalam urutan menurun berdasarkan jumlah klik:

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

LIMIT

Klausa LIMIT memungkinkan Anda menentukan jumlah hasil yang akan ditampilkan. Opsi ini berguna jika Anda hanya tertarik pada ringkasan.

Misalnya, LIMIT dapat digunakan untuk membatasi jumlah total hasil untuk kueri berikut:

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