Migra el informe de los más vendidos
En este documento, encontrarás ayuda para migrar de la versión anterior de los informes de los más vendidos a su versión más reciente. La versión anterior del informe que exporta las tablas BestSellers_TopBrands_
, BestSellers_TopProducts_
y BestSellers_TopProducts_Inventory_
dejará de estar disponible el 1 de septiembre de 2025.
El nuevo informe de los más vendidos ofrece la siguiente información:
Paridad con la versión anterior del informe y mayor coherencia con otros productos de Google similares, por ejemplo, los campos BestSellersBrandView y BestSellerProductClusterView de Content API for Shopping.
Estadísticas adicionales sobre los productos populares en Google Merchant Center Analytics
Capacidad de reabastecimiento extendida (2 años en lugar de 14 días)
Tablas exportadas por informes nuevos y anteriores
En la siguiente tabla, se comparan las tablas que exportan los informes nuevos y los antiguos:
Informe anterior | Informe nuevo |
---|---|
BestSellers_TopBrands |
BestSellersBrandWeekly y BestSellersBrandMonthly |
BestSellers_TopProducts |
BestSellersProductClusterWeekly y BestSellersProductClusterMonthly |
BestSellers_TopProducts_Inventory |
BestSellersEntityProductMapping |
El informe anterior contiene una sola agregación de datos de los más vendidos durante un período no especificado. El nuevo informe proporciona las agregaciones semanales y mensuales más recientes de estos datos en el momento de la solicitud.
Comparación de BestSellers_TopBrands
con BestSellersBrandWeekly
y BestSellersBrandMonthly
La siguiente tabla te ayuda a identificar los campos de la tabla BestSellers_TopBrands
que tienen reemplazos equivalentes en las tablas BestSellersBrandWeekly
y BestSellersBrandMonthly
. No están disponibles los reemplazos de algunos campos de la tabla anterior.
BestSellers_TopBrands (anterior) |
BestSellersBrandWeekly y BestSellersBrandMonthly (nuevos) |
---|---|
rank_timestamp |
_PARTITIONDATE y _PARTITIONTIME |
brand |
brand |
google_brand_id |
|
ranking_category |
category_id |
ranking_category_path.locale |
|
ranking_category_path.name |
|
ranking_country |
country_code |
rank_id |
|
rank |
rank |
previous_rank |
previous_rank |
relative_demand.bucket |
relative_demand |
relative_demand.min |
|
relative_demand.max |
|
previous_relative_demand.bucket |
previous_relative_demand |
previous_relative_demand.min |
|
previous_relative_demand.max |
|
relative_demand_change |
Comparación de BestSellers_TopProducts
con BestSellersProductClusterWeekly
y BestSellersProductClusterMonthly
La siguiente tabla te ayuda a identificar los campos de la tabla BestSellers_TopProducts
que tienen reemplazos equivalentes en las tablas BestSellersProductClusterWeekly
y BestSellersProductClusterMonthly
. No están disponibles los reemplazos de algunos campos de la tabla anterior.
BestSellers_TopProducts (anterior) |
BestSellersProductClusterWeekly y BestSellersProductClusterMonthly (nuevos) |
---|---|
rank_timestamp |
_PARTITIONDATE y _PARTITIONTIME |
rank_id |
entity_id |
rank |
rank |
previous_rank |
previous_rank |
ranking_country |
country_code |
ranking_category |
report_category_id |
ranking_category_path.locale |
|
ranking_category_path.name |
|
relative_demand.bucket |
relative_demand |
relative_demand.min |
|
relative_demand.max |
|
previous_relative_demand.bucket |
previous_relative_demand |
previous_relative_demand.min |
|
previous_relative_demand.max |
|
relative_demand_change |
|
product_title.locale |
|
product_title.name |
title (título único en lugar de un array para cada configuración regional) |
gtins |
variant_gtins |
google_brand_id |
|
brand |
brand |
google_product_category |
|
category_l1 , category_l2 , category_l3 , category_l4 , category_l5 |
|
google_product_category_path.locale |
|
google_product_category_path.name |
|
price_range.min |
price_range.min_amount_micros |
price_range.max |
price_range.max_amount_micros |
price_range.currency |
price_range.currency_code |
product_inventory_status |
|
brand_inventory_status |
Asignación de inventario de datos de los más vendidos
En el informe de los más vendidos anterior, los datos de los más vendidos se asignan a los datos del inventario del comercio en una tabla generada nueva, con la columna rank_id
de la tabla TopProducts
.
En el nuevo informe de los más vendidos, la columna entity_id
se exporta en las tablas BestSellersProductCluster
, que se asignan a todos los IDs de productos del inventario del comercio en la tabla BestSellersEntityProductMapping
.
BestSellers_TopProductsInventory (antiguo) |
BestSellersEntityProductMapping (nuevo) |
---|---|
rank_id (se encuentra en BestSellers_TopProducts ) |
entity_id (se encuentra en las tablas BestSellersProductClustersWeekly y BestSellersProductClustersMonthly ) |
product_id |
product_id |
merchant_id |
|
aggregator_id |
Consultas de ejemplo
En esta sección, se destacan los cambios en las consultas de ejemplo que se usan para recuperar datos de los más vendidos.
Ejemplo 1: Cómo recuperar los productos principales de una categoría y un país determinados
Las siguientes consultas muestran los productos principales de una categoría y un país determinados.
Usa la tabla BestSellers_TopProducts
(anterior)
SELECT
rank,
previous_rank,
relative_demand.bucket,
(SELECT name FROM top_products.product_title WHERE locale = 'en-US') AS product_title,
brand,
price_range,
google_product_category
FROM
`DATASET.BestSellers_TopProducts_MERCHANT_ID` AS top_products
WHERE
_PARTITIONDATE = 'DATE' AND
ranking_category = 267 /*Smartphones*/ AND
ranking_country = 'US'
ORDER BY
rank;
Usa la tabla BestSellersProductClusterWeekly
o BestSellersProductClusterMonthly
(nueva)
SELECT
rank,
previous_rank,
relative_demand,
title AS product_title,
brand,
price_range,
category_l1,
category_l2
FROM
`DATASET.BestSellersProductClusterWeekly_MERCHANT_ID` AS top_products
WHERE
_PARTITIONDATE = 'DATE' AND
report_category_id = 267 /*Smartphones*/ AND
country_code = 'US'
ORDER BY
rank;
Ejemplo 2: Cómo recuperar los productos principales de tu inventario
Las siguientes consultas muestran una lista de los productos principales de tu inventario.
Usa la tabla BestSellers_TopProducts
(anterior)
WITH latest_top_products AS
(
SELECT
*
FROM
`DATASET.BestSellers_TopProducts_MERCHANT_ID`
WHERE
_PARTITIONDATE = 'DATE'
),
latest_top_products_inventory AS
(
SELECT
*
FROM
`DATASET.BestSellers_TopProducts_Inventory_MERCHANT_ID`
WHERE
_PARTITIONDATE = 'DATE'
)
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);
Usa la tabla BestSellersProductClusterWeekly
o BestSellersProductClusterMonthly
(nueva)
WITH latest_top_products AS
(
SELECT
*
FROM
`DATASET.BestSellersProductClusterWeekly_MERCHANT_ID`
WHERE
_PARTITIONDATE = 'DATE'
),
latest_top_products_inventory AS
(
SELECT
*
FROM
`DATASET.BestSellersEntityProductMapping_MERCHANT_ID`
WHERE
_PARTITIONDATE = 'DATE'
)
SELECT
top_products.rank,
inventory.product_id,
top_products.title AS product_title,
top_products.brand,
top_products.variant_gtins
FROM
latest_top_products AS top_products
INNER JOIN
latest_top_products_inventory AS inventory
USING (entity_id);
Además, si deseas encontrar la cantidad de productos o marcas más vendidos en tu inventario, ejecuta una consulta en las tablas BestSellerProductClusterWeekly
o BestSellerProductClusterMonthly
con las columnas product_inventory_status
o brand_inventory_status
.
Consulta la siguiente consulta de ejemplo:
SELECT
*
FROM
`DATASET.BestSellersProductClusterMonthly_MERCHANT_ID`
WHERE
_PARTITIONDATE = 'DATE' AND
product_inventory_status != 'NOT_IN_INVENTORY'
ORDER BY
rank;
Ejemplo 3: Cómo recuperar las marcas principales de una categoría y un país determinados
Las siguientes consultas muestran una lista de las principales marcas de una categoría y un país determinados.
Usa la tabla BestSellers_TopBrands
(anterior)
SELECT
rank,
previous_rank,
brand
FROM
`DATASET.BestSellers_TopBrands_MERCHANT_ID`
WHERE
_PARTITIONDATE = 'DATE' AND
ranking_category = 267 /*Smartphones*/ AND
ranking_country = 'US'
ORDER BY
rank;
Usa la tabla BestSellersTopBrandsWeekly
o BestSellersTopBrandsMonthly
(nueva)
SELECT
rank,
previous_rank,
brand
FROM
`DATASET.BestSellersTopBrandsWeekly_MERCHANT_ID`
WHERE
_PARTITIONDATE = 'DATE' AND
report_category_id = 267 /*Smartphones*/ AND
country_code = 'US'
ORDER BY
rank;
Ejemplo 4: Cómo recuperar productos de las principales marcas de tu inventario
Las siguientes consultas muestran una lista de productos de las principales marcas de tu inventario.
Usa la tabla BestSellers_TopBrands
(anterior)
WITH latest_top_brands AS
(
SELECT
*
FROM
`DATASET.BestSellers_TopBrands_MERCHANT_ID`
WHERE
_PARTITIONDATE = 'DATE'
),
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,
UNNEST(destinations) AS destination,
UNNEST(destination.approved_countries) AS approved_country
WHERE
_PARTITIONDATE = 'DATE'
)
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.approved_country;
Usa la tabla BestSellersTopBrandsWeekly
o BestSellersTopBrandsMonthly
(nueva)
WITH latest_top_brands AS
(
SELECT
*
FROM
`DATASET.BestSellersBrandMonthly_MERCHANT_ID`
WHERE
_PARTITIONDATE = 'DATE'
),
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,
UNNEST(destinations) AS destination,
UNNEST(destination.approved_countries) AS approved_country
WHERE
_PARTITIONDATE = 'DATE'
)
SELECT
top_brands.brand,
–- The full category name is not supported in the new BestSellersTopBrands tables.
–- (SELECT name FROM top_brands.ranking_category_path
–- WHERE locale = 'en-US') AS ranking_category,
top_brands.category_id,
top_brands.rank,
products.product_id,
products.title
FROM
latest_top_brands AS top_brands
INNER JOIN
latest_products AS products
ON top_brands.brand = products.brand AND
top_brands.category_id = product_category_id AND
top_brands.country_code = products.approved_country;
En estas consultas, reemplaza lo siguiente:
DATASET
: nombre del conjunto de datos.MERCHANT_ID
: El ID de la cuenta del comercianteDATE
: La fecha en formatoYYYY-MM-DD
¿Qué sigue?
- Para obtener más información sobre el nuevo informe de productos más vendidos, consulta la tabla de productos más vendidos de Google Merchant Center.