Abfragen für Messwert- und Segmentfelder können an die reports.search
gesendet werden.
. Um eine Abfrage in der Merchant Center Query Language zu erstellen, müssen Sie zuerst die Abfrage
mithilfe der Sprachgrammatik erstellen.
Eine Abfrage besteht aus einer Reihe von Klauseln:
SELECT
FROM
WHERE
ORDER BY
LIMIT
Klauseln verwenden Feldnamen, Tabellennamen, Operatoren, Bedingungen und Reihenfolgen, um Ihnen die Auswahl der gewünschten Daten zu erleichtern. Nach der Zusammenführung Anfrage kann über die Google Content API for Shopping eine Anfrage gestellt werden. Sehen wir uns an, wie die einzelnen -Klausel verwendet werden.
klauseln
AUSWÄHLEN
Die SELECT
-Klausel gibt eine Reihe von Feldern an, die in der Anfrage abgerufen werden sollen. SELECT
verwendet eine durch Kommas getrennte Liste von Segmentfeldern und -messwerten und gibt die Werte
in der Antwort angeben. In einer Abfrage ist die SELECT
-Klausel erforderlich.
Hier sehen Sie eine Beispielabfrage, mit der Klickmesswerte aus einer bestimmten Tabelle ausgewählt werden:
SELECT
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
Sie können auch verschiedene Feldtypen in einer einzigen Anfrage abfragen:
SELECT
segments.date,
segments.program,
metrics.impressions,
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
Segmentfelder
segments.date
segments.program
Messwerte
metrics.impressions
metrics.clicks
Einige Felder sind in der SELECT
-Klausel aus folgenden Gründen nicht zulässig:
Einschränkung:
- Segmentfelder ohne mindestens ein Messwertfeld werden abgefragt.
Informationen in Bezug auf die oben genannte Bedingung finden Sie in unseren Referenzdokumenten.
VOM
Die FROM
-Klausel gibt die Tabelle an, aus der Daten in der Anfrage abgerufen werden sollen. Die
in der FROM
-Klausel definiert, welche Felder von allen anderen
für die jeweilige Abfrage. Im Feld
FROM
-Klausel angegeben werden. Derzeit wird nur die MerchantPerformanceView-Tabelle unterstützt.
Die FROM
-Klausel ist in einer Abfrage an die search
-Methode bei der erforderlich
reports
.
WHERE
Die Klausel WHERE
gibt die Bedingungen an, die beim Filtern von Daten für die
Bei Verwendung der WHERE
-Klausel können eine oder mehrere Bedingungen angegeben werden
Trennen Sie sie mit AND
. Jede Bedingung sollte dem Muster folgen,
field_name Operator value
Im WHERE
kann jedes Segmentfeld verwendet werden
Messwertfelder müssen jedoch in der SELECT
-Klausel angegeben werden,
die in der WHERE
-Klausel verwendet werden. In einer Abfrage ist die WHERE
-Klausel erforderlich.
da Sie immer den Zeitraum angeben müssen, für den Ihre
Leistungsdaten zurückgegeben.
Im Folgenden finden Sie ein Beispiel für die Verwendung von WHERE
, um Messwerte eines bestimmten Zeitpunkts zurückzugeben
Zeitraum:
SELECT
segments.offer_id,
metrics.impressions
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
Sie können mehrere Bedingungen kombinieren, um die Daten zu filtern. In diesem Beispiel wird die Anzahl der Klicks pro Angebot für das SHOPPING_ADS-Programm, wobei die Klicks > 100 innerhalb des angegebenen Zeitraums von 30 Tagen.
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’;
In der folgenden Abfrage sehen Sie, dass segments.date
ausgewählt wurde.
Unabhängig davon, ob Sie segments.date
auswählen, wird im
WHERE
-Klausel muss immer angegeben werden, um Leistungsdaten abzurufen.
SELECT
segments.date,
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
Beim Filtern ist es wichtig, zwischen Groß- und Kleinschreibung denken.
Eine vollständige Liste der Operatoren finden Sie in der Sprachgrammatik.
ORDER BY
Die ORDER BY
-Klausel gibt die Reihenfolge an, in der die Ergebnisse zurückgegeben werden sollen.
zurückgegeben. So können Sie die Daten in aufsteigender oder absteigender Reihenfolge anordnen.
basierend auf einem Feldnamen. Jede Sortierung wird als field_name
angegeben, gefolgt von
ASC
oder DESC
. Wenn weder ASC
noch DESC
angegeben ist, gilt die Standardreihenfolge.
an ASC
. Nur in der SELECT
-Klausel angegebene Felder können in der
ORDER BY
-Klausel angegeben werden. Die ORDER BY
-Klausel ist in einer Abfrage optional.
Mit der folgenden Abfrage werden die zurückgegebenen Zeilen nach der Anzahl der Klicks vom höchsten bis zum niedrigster Wert:
SELECT
segments.offer_id,
metrics.clicks
FROM MerchantPerformanceView
WHERE segments.date BETWEEN ‘2020-08-01’ AND ‘2020-08-31’
ORDER BY metrics.clicks DESC
Sie können in der ORDER BY
-Klausel mehrere Felder angeben, indem Sie ein durch Kommas getrenntes Feld verwenden
Liste. Die Sortierung erfolgt in der in der Abfrage angegebenen Reihenfolge.
In dieser Abfrage werden die Ergebnisse in aufsteigender Reihenfolge sortiert,
offer_id
, dann in absteigender Reihenfolge nach Anzahl der Impressionen, dann in
absteigende Reihenfolge nach Anzahl der Klicks:
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
Mit der LIMIT
-Klausel können Sie die Anzahl der Ergebnisse angeben, die zurückgegeben werden sollen.
Dies ist nützlich, wenn Sie nur an einer Zusammenfassung interessiert sind.
Beispielsweise kann LIMIT
verwendet werden, um die Gesamtzahl der Ergebnisse für den
folgende Abfrage:
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