Struktur kueri

Kueri untuk kolom metrik dan segmen dapat dikirim ke metode reports.search. Untuk membuat kueri dalam Bahasa Kueri Merchant Center, Anda harus terlebih dahulu menyusun kueri menggunakan tata bahasa 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 bagaimana masing-masing klausa dapat digunakan.

Klausa

SELECT

Klausa SELECT menentukan kumpulan kolom yang akan diambil dalam permintaan. SELECT mengambil daftar kolom dan metrik segmen yang dipisahkan koma, yang menampilkan nilai dalam respons. Klausa SELECT wajib 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 mengkueri 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 pembatasan berikut:

  • Membuat kueri untuk kolom segmen yang tidak memiliki minimal satu kolom metrik.

Informasi yang terkait dengan kondisi di atas dapat ditemukan di dokumen referensi kami.

FROM

Klausa FROM menentukan tabel tempat pengambilan data dalam permintaan. Tabel dalam klausa FROM menentukan kolom yang dapat digunakan oleh semua klausa lain untuk kueri tertentu. Hanya satu tabel yang dapat ditentukan dalam klausa FROM. Saat ini, hanya tabel MerchantPerformanceView yang didukung. Klausa FROM diperlukan 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. Setiap kolom segmen dapat digunakan dalam klausa WHERE, tetapi kolom metrik harus ditentukan dalam klausa SELECT agar dapat digunakan dalam klausa WHERE. Klausa WHERE diperlukan dalam kueri, karena Anda harus selalu menentukan rentang tanggal yang diinginkan untuk menampilkan data performa.

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 periode 30 hari yang ditentukan.

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, peka huruf besar/kecil operator Anda penting untuk diperhatikan.

Untuk mengetahui daftar lengkap operator, lihat tata bahasa bahasa.

ORDER BY

Klausa ORDER BY menentukan urutan tampilan hasil. Dengan begitu, Anda dapat mengatur data dalam urutan menaik atau menurun berdasarkan nama kolom. Setiap pengurutan ditentukan sebagai field_name, diikuti oleh ASC atau DESC. Jika ASC atau DESC tidak ditentukan, urutan akan ditetapkan secara default ke ASC. Hanya kolom yang ditentukan dalam klausa SELECT yang dapat digunakan dalam klausa ORDER BY. Klausa 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. Urutan akan terjadi dalam urutan yang sama seperti yang ditentukan dalam kueri. Misalnya, dalam kueri ini, hasilnya akan diurutkan secara menaik menurut offer_id, lalu dalam urutan menurun menurut jumlah tayangan, lalu dalam urutan menurun menurut 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

Dengan klausul LIMIT, Anda dapat menentukan jumlah hasil yang akan ditampilkan. 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