地點計數函式是查詢 Places 洞察中可用地點資料的另一種方式。這些函式是預先定義的 SQL 查詢,會在 BigQuery 中執行,並可做為地點資料查詢的補充。主要差異在於函式不會強制執行最低計數門檻,而是強制執行最低搜尋範圍:
地點資料集查詢只會傳回大於 5 的計數,但不會對搜尋區域大小設限。
地點計數函式可以傳回任何計數 (包括 0),但會強制執行 40.0 公尺 x 40.0 公尺 (1600 公尺2) 的最小搜尋範圍。
如果想瞭解查詢何時不會傳回任何結果,或需要知道低於 5 的地點數量,您或許可以考慮使用地點數量函式。舉例來說,能夠傳回低計數對於網站選取用途來說非常重要。
支援的地點計數函式和國家/地區
地點洞察資料支援下列功能:
PLACES_COUNT
:傳回單一資料列,其中包含地點的計數。PLACES_COUNT_PER_TYPE
:傳回 BigQuery 資料表,其中包含各類地點的數量。PLACES_COUNT_PER_GEO
:傳回每個地理區域的商家計數 BigQuery 資料表。PLACES_COUNT_PER_H3
:傳回每個 H3 格位中地點數量的 BigQuery 資料表。
除了地點計數外,PLACES_COUNT_PER_TYPE
、PLACES_COUNT_PER_GEO
和 PLACES_COUNT_PER_H3
函式也會針對回應的每個元素,傳回最多 250 個地點 ID。
與地點資料集類似,地點計數函式適用於各支援國家/地區的頂尖城市。舉例來說,在澳洲,您可以存取澳洲雪梨的地點計數函式。
如需支援的城市和國家/地區完整清單,請參閱 BigQuery 中的參考地點計數函式。
地點計數函式範例
以下範例使用 PLACES_COUNT
函式,傳回紐約市帝國大廈方圓 1000 公尺內的營業餐廳數量:
SELECT `maps-platform-analytics-hub.sample_places_insights_us.PLACES_COUNT`( JSON_OBJECT( 'geography', ST_GEOGPOINT(-73.9857, 40.7484), -- Empire State Building 'geography_radius', 1000, -- Radius in meters 'business_status', ['OPERATIONAL'], 'types', ["restaurant"] ) ) as count;
回應包含單一計數:
在本範例中,SELECT
陳述式會使用以下語法,參照美國的 PLACES_COUNT
函式:
maps-platform-analytics-hub.sample_places_insights_us.PLACES_COUNT
如需支援的城市和國家/地區完整清單,請參閱 BigQuery 中的參考地點計數函式。
使用 JSON_OBJECT
將引數傳遞至函式。這個範例使用 BigQuery ST_GEOGPOINT
函式,從點傳回 GEOGRAPHY
值,然後將該值傳遞至 geography
參數。此外,系統也會傳遞該點周圍的搜尋半徑和地點類型 "restaurant"
,以供搜尋。
依類型、地理區域或 H3 顯示地點數量範例
除了地點計數外,PLACES_COUNT_PER_TYPE
、PLACES_COUNT_PER_GEO
和 PLACES_COUNT_PER_H3
函式也會傳回最多 250 個地點 ID,這些 ID 對應於回應中包含的地點。
舉例來說,PLACES_COUNT_PER_TYPE
函式會傳回每個地點類型的地點數量資料表。回應中會包含與各類型相符的地點 ID 陣列。您可以使用傳回的地點 ID 查詢每個地點的資訊。
下列函式呼叫會傳回類型為 restaurant
、cafe
和 bar
的地點數量:
SELECT * FROM `maps-platform-analytics-hub.sample_places_insights_us.PLACES_COUNT_PER_TYPE`( JSON_OBJECT( 'geography', ST_GEOGPOINT(-73.9857, 40.7484), -- Empire State Building 'geography_radius', 1000, -- Radius in meters 'types', ["restaurant", "cafe", "bar"], 'business_status', ['OPERATIONAL'] ) );
這個函式會傳回含有三個資料欄的資料表:type
、count
和 sample_place_ids
。「count
」欄會顯示每個 type
的地點數量,「sample_place_ids
」欄則會顯示每個 type
最多 250 個地點 ID。
對函式套用篩選器
套用篩選器,縮小搜尋條件範圍。地點計數函式支援多種篩選條件,可縮小搜尋範圍。在下一個範例中,您會套用篩選條件,依最低使用者評分、價格等級、商家狀態,以及餐廳是否允許攜帶狗隻,限制搜尋範圍:
SELECT `maps-platform-analytics-hub.sample_places_insights_us.PLACES_COUNT`( JSON_OBJECT( 'geography', ST_GEOGPOINT(-73.9857, 40.7484), -- Empire State Building 'geography_radius', 1000, -- Radius in meters 'business_status', ['OPERATIONAL'], 'types', ["restaurant"], 'min_rating', 1.3, 'price_level', ['PRICE_LEVEL_INEXPENSIVE', 'PRICE_LEVEL_MODERATE'], 'allows_dogs', TRUE ) ) as count;
以視覺化方式呈現結果
分析和商業智慧工具對於發掘 BigQuery 資料的洞察資訊至關重要。BigQuery 支援多種 Google 和第三方資料視覺化工具,可用於分析地點洞察資料的函式結果。
如要查看函式結果的視覺化範例,請參閱「顯示結果」。如要進一步瞭解如何以視覺化方式呈現地點洞察結果,請參閱「以視覺化方式呈現查詢結果」。
限制與需求
地點計數函式有下列限制和規定:
- 系統僅支援
COUNT
深入分析。 - 搜尋範圍至少須為 40.0 公尺 x 40.0 公尺 (1600 公尺2)。
- 地點函式計數參數的輸入大小上限為 1 MB。
- 不支援依地點 ID 或地址元件篩選。
比較地點計數函式和地點資料集查詢
下表列出主要差異:
地點計數函式 | 查詢資料集 | |
---|---|---|
介面 | 四個預先定義的 SQL 函式,可產生 COUNT 洞察資料:單一計數、依類型計數、依地理位置計數、依 H3 格計數。 |
使用 SQL 執行匯總函式,例如 COUNT, COUNT_IF, SUM 和 AVG. 。您可以使用 JOIN, GROUP BY, WHERE 等函式產生其他洞察資料。 |
限制 | 強制執行 40.0 公尺 x 40.0 公尺 (1600 公尺2) 的最小搜尋範圍。只要符合最低搜尋區域,即使匯總計數少於 5,函式仍會傳回結果。 | 強制執行 5 個的計數門檻,但沒有最小搜尋區域。 |
支援的屬性篩選條件 | 支援完整結構定義,但以下項目除外:
|
支援完整結構定義 |
優點 |
|
|
在 BigQuery 中參照地點計數函式
地點計數函式支援下列城市和國家/地區。你必須分別訂閱每個城市和國家/地區。
國家/地區,城市 | 資料表名稱 |
---|---|
澳洲雪梨 | maps-platform-analytics-hub.sample_places_insights_au.FUNCTION_NAME |
巴西聖保羅 | maps-platform-analytics-hub.sample_places_insights_br.FUNCTION_NAME |
加拿大多倫多 | maps-platform-analytics-hub.sample_places_insights_ca.FUNCTION_NAME |
法國巴黎 | maps-platform-analytics-hub.sample_places_insights_fr.FUNCTION_NAME |
德國柏林 | maps-platform-analytics-hub.sample_places_insights_de.FUNCTION_NAME |
英國倫敦 | maps-platform-analytics-hub.sample_places_insights_gb.FUNCTION_NAME |
印度孟買 | maps-platform-analytics-hub.sample_places_insights_in.FUNCTION_NAME |
印尼雅加達 | maps-platform-analytics-hub.sample_places_insights_id.FUNCTION_NAME |
羅馬 (義大利) | maps-platform-analytics-hub.sample_places_insights_it.FUNCTION_NAME |
日本東京 | maps-platform-analytics-hub.sample_places_insights_jp.FUNCTION_NAME |
墨西哥墨西哥市 | maps-platform-analytics-hub.sample_places_insights_mx.FUNCTION_NAME |
西班牙馬德里 | maps-platform-analytics-hub.sample_places_insights_es.FUNCTION_NAME |
瑞士蘇黎世 | maps-platform-analytics-hub.sample_places_insights_ch.FUNCTION_NAME |
美國紐約市 | maps-platform-analytics-hub.sample_places_insights_us.FUNCTION_NAME |