PLACES_COUNT_PER_GEO 函式會擷取要搜尋的地理區域陣列,並傳回每個區域的地點計數資料表。舉例來說,如果您指定郵遞區號陣列做為搜尋區域,回應就會包含一個表格,其中每個郵遞區號都有一列。
PLACES_COUNT_PER_GEO 函式會傳回資料表,因此請使用 FROM 子句呼叫。
輸入參數:
傳回值:
- 表格中每列代表一個地理區域。資料表包含
geography(GEOGRAPHY)、count(INT64) 和place_ids(ARRAY<STRING>) 資料欄,其中place_ids包含每個地理區域最多 250 個地點 ID。
- 表格中每列代表一個地理區域。資料表包含
範例:計算紐約市各郡的餐廳數量
這個範例會產生紐約市各郡營業中餐廳數量的表格。
本範例使用美國人口普查局資料 BigQuery 公開資料集,取得紐約市三個郡的邊界:「Queens」、「Kings」、「New York」。每個郡的邊界都包含在 county_geom 欄中。
接著,這個範例會使用 BigQuery ST_SIMPLIFY 函式,傳回簡化版的 county_geom。ST_SIMPLIFY 函式會將近乎直線的邊緣鏈結,替換為單一長邊。
DECLARE geos ARRAY<GEOGRAPHY>; SET geos = (SELECT ARRAY_AGG(ST_SIMPLIFY(county_geom, 100)) FROM `bigquery-public-data.geo_us_boundaries.counties` WHERE county_name IN ("Queens","Kings", "New York") AND state_fips_code = "36"); SELECT * FROM `PROJECT_NAME.places_insights___us.PLACES_COUNT_PER_GEO`( JSON_OBJECT( 'geographies', geos, 'types', ["restaurant"], 'business_status', ["OPERATIONAL"] ) );
範例:計算各郡的數量 (依品牌篩選)
以下範例使用 brand_ids 篩選器,擷取特定品牌 (例如星巴克 "1413758728321880760") 的地點數量和地點 ID 範例:
DECLARE geos ARRAY<GEOGRAPHY>; SET geos = (SELECT ARRAY_AGG(ST_SIMPLIFY(county_geom, 100)) FROM `bigquery-public-data.geo_us_boundaries.counties` WHERE county_name IN ("Queens","Kings", "New York") AND state_fips_code = "36"); SELECT * FROM `PROJECT_NAME.places_insights___us.PLACES_COUNT_PER_GEO`( JSON_OBJECT( 'geographies', geos, 'brand_ids', ["1413758728321880760"], -- Filter for Starbucks 'business_status', ["OPERATIONAL"] ) );
以視覺化方式呈現結果
下圖顯示 Looker Studio 中的資料,以填色地圖呈現,包括每個郡的輪廓:

如要將資料匯入 Looker Studio,請按照下列步驟操作:
執行上述函式即可產生結果。
在 BigQuery 結果中,依序點選「開啟方式」->「Looker Studio」。結果會自動匯入 Looker Studio。
Looker Studio 會建立預設報表頁面,並以結果的標題、表格和長條圖初始化。

選取頁面上的所有內容並刪除。
依序點選「插入」->「區域分布圖」,在報表中加入區域分布圖。
在「圖表類型」->「設定」下方,設定下列欄位:

填色地圖會如上圖所示。您可以視需要選取「Chart types」(圖表類型) ->「Styles」(樣式),進一步設定地圖外觀。
如要進一步瞭解如何以圖表呈現 Places Insights 結果,並查看相關範例,請參閱「以圖表呈現查詢結果」。