베스트셀러 보고서 마이그레이션
이 문서는 이전 버전의 베스트셀러 보고서에서 최신 버전으로 마이그레이션하는 데 도움이 됩니다. BestSellers_TopBrands_
, BestSellers_TopProducts_
, BestSellers_TopProducts_Inventory_
테이블을 내보내는 이전 버전의 보고서는 2025년 9월 1일에 지원 중단됩니다.
새 베스트셀러 보고서에서는 다음을 제공합니다.
이전 버전의 보고서와의 동등성 및 기타 유사한 Google 제품(예: Content API for Shopping의 BestSellersBrandView 및 BestSellerProductClusterView 필드)과의 일관성 개선
Google 판매자 센터 분석의 인기 제품에 관한 추가 통계
확장된 백필 기능(14일 대신 2년)
이전 보고서와 새 보고서에서 내보낸 테이블
다음 표에서는 이전 보고서와 새 보고서에서 내보낸 테이블을 비교합니다.
이전 보고서 | 신규 보고서 |
---|---|
BestSellers_TopBrands |
BestSellersBrandWeekly 및 BestSellersBrandMonthly |
BestSellers_TopProducts |
BestSellersProductClusterWeekly 및 BestSellersProductClusterMonthly |
BestSellers_TopProducts_Inventory |
BestSellersEntityProductMapping |
이전 보고서에는 지정되지 않은 기간에 대한 베스트셀러 데이터의 단일 집계가 포함되어 있습니다. 새 보고서는 요청 시점의 최신 주간 및 월간 집계를 모두 제공합니다.
BestSellers_TopBrands
와 BestSellersBrandWeekly
, BestSellersBrandMonthly
비교
다음 표를 사용하면 BestSellersBrandWeekly
및 BestSellersBrandMonthly
테이블에서 상응하는 대체 항목이 있는 BestSellers_TopBrands
테이블의 필드를 식별할 수 있습니다. 이전 테이블의 일부 필드는 대체할 수 없습니다.
BestSellers_TopBrands (이전) |
BestSellersBrandWeekly 및 BestSellersBrandMonthly (신규) |
---|---|
rank_timestamp |
_PARTITIONDATE 및 _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 |
BestSellers_TopProducts
와 BestSellersProductClusterWeekly
, BestSellersProductClusterMonthly
비교
다음 표를 사용하면 BestSellersProductClusterWeekly
및 BestSellersProductClusterMonthly
테이블에서 상응하는 대체 항목이 있는 BestSellers_TopProducts
테이블의 필드를 식별할 수 있습니다. 이전 테이블의 일부 필드는 대체할 수 없습니다.
BestSellers_TopProducts (이전) |
BestSellersProductClusterWeekly 및 BestSellersProductClusterMonthly (신규) |
---|---|
rank_timestamp |
_PARTITIONDATE 및 _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 (모든 언어의 배열 대신 단일 제품명) |
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 |
베스트셀러 데이터의 인벤토리 매핑
이전 베스트셀러 보고서에서는 베스트셀러 데이터가 TopProducts
테이블의 rank_id
열을 사용하여 새로 생성된 테이블의 판매자 인벤토리 데이터에 매핑됩니다.
새 베스트셀러 보고서에서 entity_id
열은 BestSellersProductCluster
테이블로 내보내지며, 이 테이블은 BestSellersEntityProductMapping
테이블에서 판매자 인벤토리의 모든 제품 ID에 매핑됩니다.
BestSellers_TopProductsInventory (이전) |
BestSellersEntityProductMapping (신규) |
---|---|
rank_id (BestSellers_TopProducts 에 있음) |
entity_id (BestSellersProductClustersWeekly 및 BestSellersProductClustersMonthly 테이블에 있음) |
product_id |
product_id |
merchant_id |
|
aggregator_id |
쿼리 예
이 섹션에서는 베스트셀러 데이터를 가져오는 데 사용되는 쿼리 예시의 변경사항을 강조합니다.
예 1: 지정된 카테고리 및 국가의 인기 제품 가져오기
다음 쿼리는 지정된 카테고리 및 국가의 인기 제품을 반환합니다.
BestSellers_TopProducts
테이블(이전) 사용
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;
BestSellersProductClusterWeekly
또는 BestSellersProductClusterMonthly
테이블(신규) 사용
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;
예 2: 인벤토리의 인기 제품 가져오기
다음 쿼리는 인벤토리의 인기 제품 목록을 반환합니다.
BestSellers_TopProducts
테이블(이전) 사용
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);
BestSellersProductClusterWeekly
또는 BestSellersProductClusterMonthly
테이블(신규) 사용
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);
또한 인벤토리에서 베스트셀러 제품 또는 브랜드의 수를 찾으려면 product_inventory_status
또는 brand_inventory_status
열을 사용하여 BestSellerProductClusterWeekly
또는 BestSellerProductClusterMonthly
테이블에 대한 쿼리를 실행하세요.
다음 예시 쿼리를 참조하세요.
SELECT
*
FROM
`DATASET.BestSellersProductClusterMonthly_MERCHANT_ID`
WHERE
_PARTITIONDATE = 'DATE' AND
product_inventory_status != 'NOT_IN_INVENTORY'
ORDER BY
rank;
예 3: 지정된 카테고리 및 국가의 상위 브랜드 가져오기
다음 쿼리는 지정된 카테고리 및 국가의 상위 브랜드 목록을 반환합니다.
BestSellers_TopBrands
테이블(이전) 사용
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;
BestSellersTopBrandsWeekly
또는 BestSellersTopBrandsMonthly
테이블(신규) 사용
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;
예 4: 인벤토리의 상위 브랜드 제품 가져오기
다음 쿼리는 인벤토리의 상위 브랜드 제품 목록을 반환합니다.
BestSellers_TopBrands
테이블(이전) 사용
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;
BestSellersTopBrandsWeekly
또는 BestSellersTopBrandsMonthly
테이블(신규) 사용
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;
이 쿼리에서 다음을 바꿉니다.
DATASET
: 데이터 세트의 이름MERCHANT_ID
: 판매자 계정 IDDATE
:YYYY-MM-DD
형식의 날짜
다음 단계
- 새 베스트셀러 보고서에 대한 자세한 내용은 Google 판매자 센터 베스트셀러 테이블을 참조하세요.