Mit BigQuery Data Transfer Service for Google Merchant Center können Sie wiederkehrende Ladejobs für Google Merchant Center-Berichtsdaten automatisch planen und verwalten.
Unterstützte Berichte
BigQuery Data Transfer Service for Google Merchant Center unterstützt derzeit die folgenden Daten:
Produkte und Produktprobleme
Dies umfasst Produktdaten, die dem Merchant Center über Feeds oder die Content API for Shopping bereitgestellt werden. Ebenfalls enthalten sind Probleme auf Artikelebene, die Google bei Ihren Produkten erkannt hat. Sie können diese Daten im Google Merchant Center oder durch Abfragen der Content API for Shopping aufrufen.
Informationen zum Laden dieser Daten in BigQuery finden Sie im Produkttabellenschema für das Google Merchant Center.
Preisvergleiche
Dieser Bericht umfasst Preisvergleichsdaten auf Produktebene und basiert auf denselben Definitionen wie der über das Google Merchant Center verfügbare Bericht zur Preiswettbewerbsfähigkeit.
Informationen zum Laden dieser Daten in BigQuery finden Sie im Preisvergleichstabellenschema für das Google Merchant Center.
Bestseller
Dazu gehören Daten zu den beliebtesten Produkten und Marken in Shopping-Anzeigen und unbezahlten Einträgen sowie Informationen dazu, ob die Produkte in Ihrem Inventar vorhanden sind oder nicht.
Der Bericht basiert auf dem Bestseller-Bericht, der über das Google Merchant Center verfügbar ist.
Bestseller-Berichte umfassen die folgenden Tabellen:
BestSellers_TopProducts_
ist eine Rangliste der Top-Produkte nach Land und Google-Produktkategorie. Die folgende Tabelle enthält Daten von allen Händlern in Shopping-Anzeigen und unbezahlten Einträgen.BestSellers_TopProducts_Inventory_
ist eine Zuordnungstabelle zwischen Top-Produkten und Ihrem Inventar.BestSellers_TopBrands_
ist eine Rangliste der Top-Marken, berechnet nach Land und Google-Produktkategorie. Sie umfasst Daten von allen Händlern in Shopping-Anzeigen und unbezahlten Einträgen.
Informationen dazu, wie Bestsellerdaten in BigQuery geladen werden, finden Sie in den Google Merchant Center-Tabellenschemas für Top-Produkte, Produktinventar und Top-Marken.
BigQuery Data Transfer Service for Google Merchant Center unterstützt derzeit die folgenden Berichtsoptionen:
Berichtsoption | Support |
---|---|
Planen | Konfigurierbar als „Täglich“, „Wöchentlich“, „Monatlich“ oder „Benutzerdefiniert“. Standardmäßig ist dies auf „Täglich“ gesetzt, wenn die Übertragung erstellt wird. Das Mindestintervall zwischen Übertragungen beträgt 6 Stunden. |
Beschränkungen
Alle Merchant Center-Übertragungen unterliegen den folgenden Beschränkungen:
- Nachdem Sie eine Übertragung für Ihre Merchant Center-IDMerchant Center-ID erstellt haben, müssen Sie möglicherweise bis zu 90 Minuten warten, bevor die Daten Ihres Händlerkontos für die Übertragung vorbereitet und verfügbar sind.
- Sie können keine maximale Backfill-Dauer konfigurieren. Ein Backfill-Verlauf wird derzeit nicht unterstützt. Ein Backfill kann nur für den aktuellen Tag eingerichtet werden.
Produkte und Produktprobleme
- Daten zu Produkten und Produktproblemen in BigQuery geben nicht die Echtzeitansicht Ihres Händlerkontos wieder. Informationen zur Zeitachse Ihrer Daten finden Sie im Feld
product_data_timestamp
des Schemas.
Preisvergleiche
- Preisvergleichsdaten stellen keine Echtzeitansicht von Preisvergleichen dar. Die Zeitachse Ihrer Daten finden Sie im Feld
price_benchmark_timestamp
des Preisvergleichschemas. - Nicht alle Produkte haben einen Preisvergleich.
Bestseller
- Nicht alle Länder enthalten Ranking-Daten. Länder, die im Bericht enthalten sind (mit ISO 3166-1 alpha-2): AT, AU, BE, BR, CA, CH, CZ, DE, DK, ES, FI, FR, GB, HU IE, IN, IT, JP, MX, NL, NO, NZ, PL, PT, RO, RU, SE, SK, TR, UA und USA.
- Die Daten der Bestseller umfassen keine Echtzeitansicht von Marken-Rankings.
Informationen zum Aufrufen der Zeitachse erhalten Sie im Feld
rank_timestamp
der SchemasBestSellers_TopProducts_
undBestSellers_TopBrands_
. - Nur die beliebtesten Artikel in Shopping-Anzeigen und unbezahlten Einträgen werden in die Tabelle
BestSellers_TopProducts_
aufgenommen. - Nur die beliebtesten Marken in Shopping-Anzeigen und unbezahlten Einträgen werden in die Tabelle
BestSellers_TopBrands_
aufgenommen. Möglicherweise enthält die TabelleProducts_
Zeilen mit einergoogle_brand_id
, die keiner der Marken in der TabelleBestSellers_TopBrands_
zugeordnet ist. - Marken-IDs im Feld
google_brand_id
können sich im Laufe der Zeit ändern, um die sich ändernde Art von Unternehmen und Marken zu berücksichtigen. Aus diesem Grund ist die Erfassung von Marken über einen längeren Zeitraum nicht garantiert. - Während Marken in vielen verschiedenen Kategorien eingestuft werden, befinden sich alle Produkte in der Tabelle
Products_
in Blattkategorien. Verwenden Sie das Feldgoogle_product_category_ids
, wie in Beispielabfragen für Bestseller dargestellt, um Marken und Produkte in Nicht-Blattkategorien zusammenzuführen.
Unterstützung von Mehrfachkundenkonten
Bestandskunden mit mehreren Händler-IDs sollten möglichst ein übergeordnetes Mehrfachkundenkonto (Multi-Client Account, MCA) konfigurieren. Durch das Konfigurieren eines MCA haben Sie die Möglichkeit, eine einzige Übertragung für all Ihre Händler-IDs zu erstellen.
Wenn Sie Google Merchant Center-MCAs anstelle von einzelnen Händler-IDs verwenden, bieten sich Ihnen verschiedene Vorteile:
- Sie müssen nicht mehr mehrere Übertragungen verwalten, um Berichtsdaten für mehrere Händler-IDs zu übertragen.
- Abfragen für mehrere Händler-IDs sind viel einfacher zu schreiben, da alle Händler-ID-Daten in derselben Tabelle gespeichert sind.
- Die Verwendung von MCAs verringert potenzielle Probleme mit BigQuery-Kontingenten für Ladejobs, da Ihre gesamten Händler-ID-Daten im selben Job geladen werden.
Ein möglicher Nachteil der MCA-Verwendung besteht darin, dass Ihre nachfolgenden Abfragekosten wahrscheinlich höher sind. Da all Ihre Daten in derselben Tabelle gespeichert sind, müssen Abfragen, die Daten für eine einzelne Händler-ID abrufen, trotzdem die gesamte Tabelle scannen.
Wenn Sie ein MCA verwenden, wird die MCA-ID unter aggregator_id
und die einzelnen Unterkonten unter merchant_id
aufgeführt. Bei Konten ohne MCA ist aggregator_id
auf null
eingestellt.
Vorbereitung
Führen Sie vor dem Erstellen einer Google Merchant Center-Übertragung folgende Schritte aus:
- Überprüfen Sie, ob Sie alle erforderlichen Aktionen ausgeführt haben, damit Sie den BigQuery Data Transfer Service aktivieren können.
- Erstellen Sie ein BigQuery-Dataset zum Speichern der Google Merchant Center-Daten.
- Wenn Sie Benachrichtigungen über die Übertragungsausführung für Pub/Sub einrichten möchten, benötigen Sie die Berechtigungen
pubsub.topics.setIamPolicy
. Pub/Sub-Berechtigungen sind nicht erforderlich, wenn Sie nur E-Mail-Benachrichtigungen einrichten. Weitere Informationen finden Sie unter Ausführungsbenachrichtigungen im BigQuery Data Transfer Service.
Erforderliche Berechtigungen
Achten Sie darauf, dass die Person, die die Übertragung erstellt, die folgenden Berechtigungen hat:
BigQuery:
bigquery.transfers.update
-Berechtigungen zum Erstellen der Übertragungbigquery.datasets.update
-Berechtigungen für das Ziel-Dataset
Die vordefinierte IAM-Rolle
bigquery.admin
enthält die Berechtigungenbigquery.transfers.update
undbigquery.datasets.update
. Weitere Informationen zu IAM-Rollen in BigQuery Data Transfer Service finden Sie in der Referenz zur Zugriffssteuerung.Google Merchant Center:
Zugriff auf das Google Merchant Center-Konto, das in der Übertragungskonfiguration verwendet wird. Wenn Sie bestätigen möchten, dass der Zugriff möglich ist, klicken Sie in der Google Merchant Center-UI auf den Abschnitt Nutzer.
Um auf Daten zur preislichen Wettbewerbsfähigkeit und zu Bestsellern zugreifen zu können, müssen Sie zuerst das Market Insights-Programm aktivieren.
Google Merchant Center-Übertragung einrichten
Zum Einrichten einer Datenübertragung für die Google Merchant Center-Berichterstellung ist Folgendes erforderlich:
- Händler-ID oder Mehrfachkundenkonto-ID: Dies ist die Händler-ID, die in der Google Merchant Center-UI angezeigt wird.
So erstellen Sie eine Datenübertragung für die Google Merchant Center-Berichterstellung:
Console
Rufen Sie in der Cloud Console die Seite „BigQuery“ auf.
Klicken Sie auf Übertragungen.
Klicken Sie auf Create Transfer (Übertragung erstellen).
Gehen Sie auf der Seite Create Transfer (Übertragung erstellen) so vor:
Wählen Sie im Abschnitt Source type (Quelltyp) für Source (Quelle) die Option Google Merchant Center aus.
Geben Sie im Abschnitt Transfer config name (Konfigurationsname für Übertragung) für Display name (Anzeigename) einen Namen wie
My Transfer
für die Übertragung ein. Der Übertragungsname kann ein beliebiger Wert sein, mit dem Sie die Übertragung einfach identifizieren können, wenn Sie sie später ändern müssen.Klicken Sie im Abschnitt Schedule options (Zeitplanoptionen) für Schedule (Zeitplan) auf Start at a set time (Zu einer festgelegten Zeit starten).
Wählen Sie für Repeats (Wiederholungen) eine Option aus, um festzulegen, wie oft die Übertragung ausgeführt werden soll.
- Daily (Täglich) (Standardeinstellung)
- Weekly (Wöchentlich)
- Monthly (Monatlich)
- Custom (Benutzerdefiniert)
- On demand
Geben Sie für Start date and run time (Startdatum und Laufzeit) das Datum und die Uhrzeit für den Start der Übertragung ein. Dieser Wert sollte mindestens 90 Minuten nach der aktuellen UTC-Zeit liegen. Wenn Sie Start now (Jetzt starten) auswählen, ist diese Option deaktiviert.
Wenn Sie die Zeitplanoptionen auf Start now (Jetzt starten) belassen, wird die erste Übertragungsausführung sofort gestartet und die folgende Fehlermeldung wird ausgegeben:
No data to transfer found for the Merchant account. If you have just created this transfer, you may need to wait for up to 90 minutes before the data of your Merchant account are prepared and available for the transfer.
Warten Sie in diesem Fall 90 Minuten und richten Sie anschließend einen Backfill ein oder warten Sie bis morgen auf die nächste geplante Ausführung.
Wählen Sie im Abschnitt Destination settings (Zieleinstellungen) für Destination dataset (Ziel-Dataset) das Dataset aus, das Sie zum Speichern Ihrer Daten erstellt haben.
Geben Sie im Abschnitt Data source details (Details zur Datenquelle) für Merchant ID (Händler-ID) Ihre Händler-ID oder MCA-ID ein.
Wählen Sie die Berichte aus, die Sie übertragen möchten. Weitere Informationen finden Sie unter Unterstützte Berichte.
(Optional) Im Abschnitt Notification options (Benachrichtigungsoptionen):
- Klicken Sie auf die Umschaltfläche, um E-Mail-Benachrichtigungen zu aktivieren. Wenn Sie diese Option aktivieren, erhält der Übertragungsadministrator eine E-Mail-Benachrichtigung, wenn ein Übertragungsvorgang fehlschlägt.
- Wählen Sie unter Pub/Sub-Thema auswählen Ihr Thema aus oder klicken Sie auf Thema erstellen. Mit dieser Option werden Pub/Sub-Ausführungsbenachrichtigungen für Ihre Übertragung konfiguriert.
Klicken Sie auf Speichern.
bq
Geben Sie den Befehl bq mk
ein und geben Sie das Flag --transfer_config
für die Übertragungserstellung an. Die folgenden Flags sind ebenfalls erforderlich:
--data_source
--target_dataset
--display_name
--params
Sie können auch das Flag --project_id
bereitstellen, um ein bestimmtes Projekt anzugeben. Wenn --project_id
nicht angegeben ist, wird das Standardprojekt verwendet.
bq mk \ --transfer_config \ --project_id=project_id \ --target_dataset=dataset \ --display_name=name \ --params='parameters' \ --data_source=data_source
Dabei gilt:
- project_id ist die Projekt-ID.
- dataset ist das Ziel-Dataset für die Übertragungskonfiguration.
- name ist der angezeigte Name für die Übertragungskonfiguration. Der Name der Übertragung kann ein beliebiger Wert sein, mit dem Sie die Übertragung einfach identifizieren können, wenn Sie sie später ändern müssen.
- parameters enthält die Parameter für die erstellte Übertragungskonfiguration im JSON-Format. Beispiel:
--params='{"param":"param_value"}'
.- Für Google Merchant Center-Übertragungen müssen Sie den Parameter
merchant_id
angeben. - Der Parameter
export_products
gibt an, ob Daten zu Produkten und Produktproblemen übertragen werden sollen. Dieser Parameter ist standardmäßig enthalten, auch wenn Sie den Parameterexport_products
nicht angeben. Google empfiehlt, dass Sie diesen Parameter explizit aufnehmen und auf „true“ setzen. - Der Parameter
export_price_benchmarks
gibt an, ob Preisvergleichsdaten übertragen werden sollen. - Der Parameter
export_best_sellers
gibt an, ob Bestsellerdaten übertragen werden sollen.
- Für Google Merchant Center-Übertragungen müssen Sie den Parameter
- data_source ist die Datenquelle:
merchant_center
.
Mit dem folgenden Befehl wird beispielsweise eine Google Merchant Center-Übertragung mit dem Namen My Transfer
, der Händler-ID 1234
und dem Ziel-Dataset mydataset
erstellt. Die Übertragung wird im Standardprojekt erstellt:
bq mk \
--transfer_config \
--target_dataset=mydataset \
--display_name='My Transfer' \
--params='{"merchant_id":"1234","export_products":"true","export_price_benchmarks":"true","export_best_sellers":"true"}' \
--data_source=merchant_center
Wenn Sie den Befehl zum ersten Mal ausführen, erhalten Sie eine Nachricht wie die folgende:
[URL omitted] Please copy and paste the above URL into your web browser and
follow the instructions to retrieve an authentication code.
Richten Sie sich nach der Anleitung in der Nachricht und fügen Sie den Authentifizierungscode in die Befehlszeile ein.
If you have just created this transfer, you may need to wait for up to 90 minutes before the data of your Merchant account are prepared and available for the transfer." Warten Sie in diesem Fall 90 Minuten und richten Sie dann einen Backfill für heute ein oder warten Sie bis zur nächsten geplanten Ausführung am darauffolgenden Tag.
API
Verwenden Sie die Methode projects.locations.transferConfigs.create
und geben Sie eine Instanz der Ressource TransferConfig
an.
Fehler beim Einrichten der Google Merchant Center-Übertragung beheben
Falls beim Einrichten von Übertragungen Probleme auftreten, finden Sie unter Fehlerbehebung bei Übertragungskonfigurationen im Abschnitt Übertragungsprobleme mit Google Merchant Center weitere Informationen.
Daten abfragen
Bei der Übertragung Ihrer Daten in BigQuery werden die Daten in Tabellen geschrieben, die nach Aufnahmezeit partitioniert sind. Weitere Informationen finden Sie unter Einführung in partitionierte Tabellen.
Beim Abfragen Ihrer Google Merchant Center-Tabelle müssen Sie die Pseudospalte _PARTITIONTIME
oder _PARTITIONDATE
in der Abfrage verwenden.
Weitere Informationen finden Sie unter Partitionierte Tabellen abfragen.
Die Tabelle Products_
enthält verschachtelte und wiederkehrende Felder. Informationen zum Umgang mit verschachtelten und wiederkehrenden Daten finden Sie in der Standard-SQL-Dokumentation unter Unterschiede bei der Verarbeitung wiederkehrender Felder.
Google Merchant Center-Beispielabfragen
Mithilfe der folgenden Google Merchant Center-Beispielabfragen lassen sich die übertragenen Daten analysieren. Sie können die Abfragen auch in einem Visualisierungstool wie Google Data Studio verwenden.
Ersetzen Sie in jeder der folgenden Abfragen dataset durch den Namen Ihres Datasets. Ersetzen Sie merchant_id durch Ihre Merchant Center-ID. Wenn Sie ein MCA verwenden, ersetzen Sie merchant_id durch Ihre MCA-ID.
Beispielabfragen für Produkte und Produktprobleme
Statistiken zu Produkten und Produktproblemen
Die folgende Beispielabfrage gibt die Anzahl der Produkte, der Produkte mit Problemen und der Probleme nach Tag zurück.
Console
SELECT _PARTITIONDATE AS date, COUNT(*) AS num_products, COUNTIF(ARRAY_LENGTH(issues) > 0) AS num_products_with_issues, SUM(ARRAY_LENGTH(issues)) AS num_issues FROM dataset.Products_merchant_id WHERE _PARTITIONDATE >= 'YYYY-MM-DD' GROUP BY date ORDER BY date DESC
bq
bq query --use_legacy_sql=false ' SELECT _PARTITIONDATE AS date, COUNT(*) AS num_products, COUNTIF(ARRAY_LENGTH(issues) > 0) AS num_products_with_issues, SUM(ARRAY_LENGTH(issues)) AS num_issues FROM dataset.Products_merchant_id WHERE _PARTITIONDATE >= 'YYYY-MM-DD' GROUP BY date ORDER BY date DESC'
Für Shopping-Anzeigen abgelehnte Produkte
Die folgende Beispielabfrage gibt die Anzahl der Produkte zurück, die für Shopping-Anzeigen abgelehnt wurden. Die Ablehnung kann darauf zurückzuführen sein, dass ein Produkt ausgeschlossen wurde oder ein Problem mit dem Produkt vorliegt.
Console
SELECT _PARTITIONDATE AS date, COUNT(*) AS num_products FROM dataset.Products_merchant_id, UNNEST(destinations) AS destination WHERE _PARTITIONDATE >= 'YYYY-MM-DD' AND destination.status = 'disapproved' GROUP BY date ORDER BY date DESC
bq
bq query --use_legacy_sql=false ' SELECT _PARTITIONDATE AS date, COUNT(*) AS num_products FROM dataset.Products_merchant_id, UNNEST(destinations) AS destination WHERE _PARTITIONDATE >= 'YYYY-MM-DD' AND destination.status = 'disapproved' GROUP BY date ORDER BY date DESC'
Produkte mit Problemen aufgrund von Ablehnungen
Die folgende Beispielabfrage ruft die Anzahl der Produkte ab, bei denen Probleme aufgrund von Ablehnungen vorliegen.
Console
SELECT _PARTITIONDATE AS date, COUNT(DISTINCT CONCAT(CAST(merchant_id AS STRING), ':', product_id)) AS num_distinct_products FROM dataset.Products_merchant_id, UNNEST(issues) AS issue WHERE _PARTITIONDATE >= 'YYYY-MM-DD' AND issue.servability = 'disapproved' GROUP BY date ORDER BY date DESC
bq
bq query --use_legacy_sql=false ' SELECT _PARTITIONDATE AS date, COUNT(DISTINCT CONCAT(CAST(merchant_id AS STRING), ':', product_id)) AS num_distinct_products FROM dataset.Products_merchant_id, UNNEST(issues) AS issue WHERE _PARTITIONDATE >= 'YYYY-MM-DD' AND issue.servability = 'disapproved' GROUP BY date ORDER BY date DESC'
Beispielabfragen für Preisvergleiche
Produktpreise mit Preisvergleichen vergleichen
Die folgende Abfrage verknüpft Products
- und Price Benchmarks
-Daten, um die Liste der Produkte und der zugehörigen Preisvergleiche zurückzugeben.
Console
WITH products AS ( SELECT _PARTITIONDATE AS date, * FROM dataset.Products_merchant_id WHERE _PARTITIONDATE >= 'YYYY-MM-DD' ), benchmarks AS ( SELECT _PARTITIONDATE AS date, * FROM dataset.Products_PriceBenchmarks_merchant_id WHERE _PARTITIONDATE >= 'YYYY-MM-DD' ) SELECT products.date, products.product_id, products.merchant_id, products.aggregator_id, products.price, products.sale_price, benchmarks.price_benchmark_value, benchmarks.price_benchmark_currency, benchmarks.country_of_sale FROM products INNER JOIN benchmarks ON products.product_id = benchmarks.product_id AND products.merchant_id = benchmarks.merchant_id AND products.date = benchmarks.date
bq
bq query --use_legacy_sql=false ' WITH products AS ( SELECT _PARTITIONDATE AS date, * FROM `dataset.Products_merchant_id` WHERE _PARTITIONDATE >= 'YYYY-MM-DD' ), benchmarks AS ( SELECT _PARTITIONDATE AS date, * FROM `dataset.Products_PriceBenchmarks_merchant_id` WHERE _PARTITIONDATE >= 'YYYY-MM-DD' ) SELECT products.date, products.product_id, products.merchant_id, products.aggregator_id, products.price, products.sale_price, benchmarks.price_benchmark_value, benchmarks.price_benchmark_currency, benchmarks.country_of_sale FROM products INNER JOIN benchmarks ON products.product_id = benchmarks.product_id AND products.merchant_id = benchmarks.merchant_id AND products.date = benchmarks.date'
Beispielabfragen für Bestseller
Top-Produkte für eine bestimmte Kategorie und ein bestimmtes Land
Die folgende Abfrage gibt die Top-Produkte für die Smartphone-Kategorie in den USA zurück:
Console
SELECT rank, previous_rank, relative_demand.bucket, (SELECT name FROM top_products.product_title WHERE locale = 'en-US') AS product_title, brand, price_range FROM dataset.BestSellers_TopProducts_merchant_id AS top_products WHERE _PARTITIONDATE = 'YYYY-MM-DD' AND ranking_category = 267 /*Smartphones*/ AND ranking_country = 'US' ORDER BY rank
bq
bq query --use_legacy_sql=false ' SELECT rank, previous_rank, relative_demand.bucket, (SELECT name FROM top_products.product_title WHERE locale = 'en-US') AS product_title, brand, price_range FROM dataset.BestSellers_TopProducts_merchant_id AS top_products WHERE _PARTITIONDATE = 'YYYY-MM-DD' AND ranking_category = 267 /*Smartphones*/ AND ranking_country = 'US' ORDER BY rank'
Top-Produkte in Ihrem Inventar
Die folgende Abfrage verknüpft BestSellers_TopProducts_Inventory_
- und BestSellers_TopProducts_
-Daten, um eine Liste der Top-Produkte zurückzugeben, die Sie derzeit in Ihrem Inventar haben.
Console
WITH latest_top_products AS ( SELECT * FROM dataset.BestSellers_TopProducts_merchant_id WHERE _PARTITIONDATE = 'YYYY-MM-DD' ), latest_top_products_inventory AS ( SELECT * FROM dataset.BestSellers_TopProducts_Inventory_merchant_id WHERE _PARTITIONDATE = 'YYYY-MM-DD' ) SELECT top_products.rank, inventory.product_id, (SELECT ANY_VALUE(name) FROM top_products.product_title) AS product_title, top_products.brand, top_products.gtins FROM latest_top_products AS top_products INNER JOIN latest_top_products_inventory AS inventory USING (rank_id)
bq
bq query --use_legacy_sql=false ' WITH latest_top_products AS ( SELECT * FROM dataset.BestSellers_TopProducts_merchant_id WHERE _PARTITIONDATE = 'YYYY-MM-DD' ), latest_top_products_inventory AS ( SELECT * FROM dataset.BestSellers_TopProducts_Inventory_merchant_id WHERE _PARTITIONDATE = 'YYYY-MM-DD' ) SELECT top_products.rank, inventory.product_id, (SELECT ANY_VALUE(name) FROM top_products.product_title) AS product_title, top_products.brand, top_products.gtins FROM latest_top_products AS top_products INNER JOIN latest_top_products_inventory AS inventory USING (rank_id)'
Top-Marken für eine bestimmte Kategorie und ein bestimmtes Land
Die folgende Abfrage gibt Top-Marken für die Smartphone-Kategorie in den USA zurück.
Console
SELECT rank, previous_rank, brand FROM dataset.BestSellers_TopBrands_merchant_id WHERE _PARTITIONDATE = 'YYYY-MM-DD' AND ranking_category = 267 /*Smartphones*/ AND ranking_country = 'US' ORDER BY rank
bq
bq query --use_legacy_sql=false ' SELECT rank, previous_rank, brand FROM dataset.BestSellers_TopBrands_merchant_id WHERE _PARTITIONDATE = 'YYYY-MM-DD' AND ranking_category = 267 /*Smartphones*/ AND ranking_country = 'US' ORDER BY rank'
Produkte der Top-Marken in Ihrem Inventar
Die folgende Abfrage gibt eine Liste der Produkte in Ihrem Inventar von Top-Marken zurück, die nach Kategorie und Land aufgeführt sind.
Console
WITH latest_top_brands AS ( SELECT * FROM dataset.BestSellers_TopBrands_merchant_id WHERE _PARTITIONDATE = 'YYYY-MM-DD' ), latest_products AS ( SELECT product.*, product_category_id FROM dataset.Products_merchant_id AS product, UNNEST(product.google_product_category_ids) AS product_category_id WHERE _PARTITIONDATE = 'YYYY-MM-DD' ) SELECT top_brands.brand, (SELECT name FROM top_brands.ranking_category_path WHERE locale = 'en-US') AS ranking_category, top_brands.ranking_country, top_brands.rank, products.product_id, products.title FROM latest_top_brands AS top_brands INNER JOIN latest_products AS products ON top_brands.google_brand_id = products.google_brand_id AND top_brands.ranking_category = product_category_id AND top_brands.ranking_country = products.target_country
bq
bq query --use_legacy_sql=false ' WITH latest_top_brands AS ( SELECT * FROM dataset.BestSellers_TopBrands_merchant_id WHERE _PARTITIONDATE = 'YYYY-MM-DD' ), latest_products AS ( SELECT product.*, product_category_id FROM dataset.Products_merchant_id AS product, UNNEST(product.google_product_category_ids) AS product_category_id WHERE _PARTITIONDATE = 'YYYY-MM-DD' ) SELECT top_brands.brand, (SELECT name FROM top_brands.ranking_category_path WHERE locale = 'en-US') AS ranking_category, top_brands.ranking_country, top_brands.rank, products.product_id, products.title FROM latest_top_brands AS top_brands INNER JOIN latest_products AS products ON top_brands.google_brand_id = products.google_brand_id AND top_brands.ranking_category = product_category_id AND top_brands.ranking_country = products.target_country'