月間の POI の変化をクエリする(PLACES_COUNT_CHANGE)

PLACES_COUNT_CHANGE 関数は、関心のある場所の数の変化を計算し、複数の入力地域にわたる 2 つの特定の月の間で追加および削除されたサンプル プレイス ID を取得します。

PLACES_COUNT_V2 と同様に、この関数は、地理情報の入力テーブル パラメータを受け入れることで、効率的なバッチ処理を行うように設計されています。これにより、複数の場所で成長トレンドと商業シフトを同時に評価できます。

構文

SELECT *
FROM
  `PROJECT_NAME.LINKED_DATASET_NAME.PLACES_COUNT_CHANGE`(
    TABLE input_geographies,
    filters
  );

パラメータ

  • PROJECT_NAME: Google Cloud Platform プロジェクトの名前です。
  • LINKED_DATASET_NAME: Places Insights 関数を含む BigQuery データセットの名前(例: places_insights___us)。
  • input_geographies: 分析する地域を含む BigQuery テーブル。このテーブルには、次の列を含める必要があります。
    • geo_id(STRING): 各地域の固有識別子。
    • geo(GEOGRAPHY): エリアを表す BigQuery GEOGRAPHY オブジェクト。これは、ポイント、ポリゴン、またはその他の地理タイプにすることができます。
  • filters(JSON): 場所をフィルタするための Key-Value ペアを含む JSON オブジェクト。フィルタ パラメータをご覧ください。次のフィルタを含める必要があります。
    • month1(STRING): 場所を検索する最初の月。
    • month2(STRING): 場所を検索する 2 番目の月。

出力テーブルのスキーマ

PLACES_COUNT_CHANGE 関数は、次の列を含むテーブルを返します。

列名 データ型 説明
geo_id STRING 入力された地域の ID。
start_count INT64 最初の月の場所の数。
end_count INT64 2 か月目の場所の数。
net_change INT64 end_count と start_count の差(end_count - start_count)。
percentage_change FLOAT64 1 か月目から 2 か月目までの変化率。
compound_monthly_growth_rate FLOAT64 1 か月目から 2 か月目までの複合月間成長率。
added_count INT64 sample_added_place_ids 内のサンプル プレイス ID の数。
removed_count INT64 sample_removed_place_ids 内のサンプル プレイス ID の数。
sample_added_place_ids ARRAY<STRING> month2 には存在するが month1 には存在しないサンプル プレイス ID のリスト。
sample_removed_place_ids ARRAY<STRING> month1 には存在するが month2 には存在しないサンプル プレイス ID のリスト。

結果は percentage_change と start_count の降順で並べ替えられます。

仕組み

この関数は、input_geographies テーブルの各行を処理します。geo オブジェクトごとに、filters の month1 と month2 で指定された 2 か月間に、地理(geo がポイントで、半径が filters で指定されている場合は geography_radius 内)に該当する場所の数をカウントします。これらの場所を使用して、1 か月目から 2 か月目までの変化率や複合月間成長率など、その他の有用な統計情報を計算します。

このカウントには、filters JSON オブジェクトで定義されたすべての条件に一致する場所のみが含まれます。

例: 2 か月間の POI 数の変化を計算する

この例では、month1 パラメータと month2 パラメータを使用して、特定の 2 か月間の POI 数の変化をクエリする方法を示します。指定された地理位置情報ポイントから半径 5, 000 の範囲を対象としています。

WITH my_locations AS (
  SELECT
    'loc_1' AS geo_id,
    ST_GEOGFROMTEXT('POINT(-122.4194 37.7749)') AS geo
  -- Add more target locations as needed...
)

SELECT *
FROM `PROJECT_NAME.places_insights___us.PLACES_COUNT_CHANGE`(
  TABLE my_locations,
  JSON_OBJECT(
    'geography_radius', 5000,
    'month1', '2026-01', -- Baseline snapshot month (YYYY-MM)
    'month2', '2026-02'  -- Comparison snapshot month (YYYY-MM)
  )
);

出力の分析

このクエリは、入力された地域ごとに 1 行のテーブルを返します。

  • 成長指標: 出力には、ベースライン数(start_count: 89,560)と比較数(end_count: 90,923)が表示され、net_change は +1,363 件(+1.52% percentage_change)になります。
  • グラウンド トゥルースの検査: sample_added_place_ids 配列には、month2(2026 年 2 月)に有効になった特定のプレイス ID が一覧表示されます。sample_removed_place_ids には、存在しなくなったプレイス ID が一覧表示されます。
  • Places API へのブリッジ: これらのサンプル プレイス ID を Place Details API(新規)に直接渡して、新規に開店または閉店したビジネスの店舗名、住所、属性を検索できます。

Places Count Change 関数の結果。