ブランドデータを使用してクエリを記述する

Places Insights では、さまざまなカテゴリのビジネス情報のブランド情報を提供しています。次に例を示します。

  • 「ATM、銀行、信用組合」のカテゴリの場合、ブランドデータには PNC、UBS、Chase の各銀行のブランドのエントリが含まれます。
  • 「自動車レンタル」のカテゴリの場合、データには Budget、Hertz、Thrifty の各ブランドのエントリが含まれます。

ブランド データセットのクエリの一般的なユースケースは、ビジネス情報のデータに対するクエリと結合して、次のような質問に答えることです。

  • あるエリアの店舗数をブランド別に集計するにはどうすればよいですか?
  • そのエリアの上位 3 社の競合ブランドの店舗数は?
  • そのエリアの特定のカテゴリ(「フィットネス」や「ガソリン スタンド」など)のブランド数は?

ブランド データセットについて

米国のブランド データセットの名前は places_insights___us.brands です。

ブランド データセットのスキーマ

ブランド データセットのスキーマでは、次の 3 つのフィールドが定義されています。

  • id: ブランド ID。
  • name: ブランド名(「Hertz」や「Chase」など)。
  • category: ブランドタイプ(「ガソリン スタンド」、「飲食」、「宿泊施設」など)。使用可能な値の一覧については、カテゴリ の値をご覧ください。

クエリでブランド データセットを使用する

ビジネス情報データセット のスキーマ では、brand_ids フィールドが定義されています。ビジネス情報データセット内のビジネス情報がブランドに関連付けられている場合、そのビジネス情報の brand_ids フィールドには対応するブランド ID が含まれます。

ブランド データセット を参照する一般的なクエリでは、brand_ids フィールドに基づいてビジネス情報データセットJOIN を実行します。

たとえば、ニューヨーク市のエンパイア ステート ビルから 2, 000 メートル以内のマクドナルドの店舗数を調べるには、次のようにします。

SELECT WITH AGGREGATION_THRESHOLD
 COUNT(*)
FROM PROJECT_NAME.places_insights___us.places places, UNNEST(brand_ids) AS brand_id
LEFT JOIN PROJECT_NAME.places_insights___us.brands ON brand_id = brands.id
WHERE
ST_DWITHIN(ST_GEOGPOINT(-73.9857, 40.7484), point, 2000)
AND brands.name = "McDonald's"
AND business_status = "OPERATIONAL"

次のクエリは、ニューヨーク市内の銀行の数をブランド名でグループ化して返します。

SELECT WITH AGGREGATION_THRESHOLD
  brands.name,
  COUNT(*) AS store_count
FROM PROJECT_NAME.places_insights___us.places places, UNNEST(brand_ids) AS brand_id
LEFT JOIN PROJECT_NAME.places_insights___us.brands ON brand_id = brands.id
WHERE brands.category = "ATMs, Banks and Credit Unions"
AND "bank" IN UNNEST(places.types)
AND business_status = "OPERATIONAL"
GROUP BY brands.name
ORDER BY store_count DESC;

次の画像は、ブランド別の店舗数を示しています。

ブランド別にグループ化された銀行の数をカウントするクエリの結果。

カテゴリの値

ブランドの category フィールドには、次の値を指定できます。

カテゴリタイプの値
ATMs, Banks and Credit Unions
Automotive and Parts Dealers
Automotive Rentals
Automotive Services
Dental
Electric Vehicle Charging Stations
Electronics Retailers
Fitness
Food and Drink
Gas Station
Grocery and Liquor
Health and Personal Care Retailers
Hospital
Lodging
Merchandise Retail
Movie Theater
Parking
Telecommunications