La funzione PLACES_COUNT_V2 restituisce una tabella BigQuery contenente i conteggi dei luoghi
e gli ID luogo di esempio per più geografie di input in base ai filtri specificati.
Questa funzione è progettata per l'elaborazione batch efficiente accettando un parametro
della tabella
di input
delle aree geografiche, consentendoti di analizzare molte aree di interesse in un'unica query
fornendo le aree geografiche tramite una tabella di input.
Sintassi
SELECT * FROM `PROJECT_NAME.LINKED_DATASET_NAME.PLACES_COUNT_V2`( TABLE input_geographies, filters )
Parametri
PROJECT_NAME: il nome del tuo progetto Google Cloud.LINKED_DATASET_NAME: il nome del set di dati BigQuery contenente le funzioni Places Insights (ad es.places_insights___us).input_geographies: una tabella BigQuery contenente le aree geografiche da analizzare. Questa tabella deve includere le seguenti colonne:filters(JSON): un oggetto JSON contenente coppie chiave-valore per filtrare i luoghi. Vedi Parametri del filtro.
Schema della tabella di output
La funzione PLACES_COUNT_V2 restituisce una tabella con le seguenti colonne:
| Nome colonna | Tipo di dati | Descrizione |
|---|---|---|
geo_id |
STRING | L'identificatore univoco della geografia di input, dalla tabella input_geographies. |
input_geography |
GEOGRAPHY | L'oggetto GEOGRAPHY originale della tabella input_geographies. |
place_count |
INTEGER | Il numero totale di luoghi corrispondenti ai filtri. |
sample_place_ids |
ARRAY<STRING> | Un array di massimo 250 ID luogo che corrispondono ai criteri. |
Come funziona
La funzione elabora ogni riga della tabella input_geographies. Per ogni oggetto geo, viene conteggiato il numero di luoghi che rientrano nella geografia (o all'interno di geography_radius se geo è un punto e il raggio è specificato in filters). Il conteggio include solo i luoghi che corrispondono a tutte le condizioni definite nell'oggetto JSON filters.
Esempio: calcola il numero di ristoranti in tre contee di New York City
Questo esempio genera una tabella con il numero di ristoranti operativi in tre contee di New York City.
Questo esempio utilizza il set di dati pubblico BigQuery United States Census Bureau Data per ottenere i confini di tre contee di New York City: "Queens", "Kings" e "New York". I confini di ogni contea sono contenuti nella colonna county_geom.
Innanzitutto, creiamo una tabella temporanea new_york_counties per contenere geo_id e
GEOGRAPHY semplificato per ogni contea.
SELECT * FROM `PROJECT_NAME.places_insights___us.PLACES_COUNT_V2`( ( SELECT county_name AS geo_id, ST_SIMPLIFY(county_geom, 100) AS geo FROM `bigquery-public-data.geo_us_boundaries.counties` WHERE state_fips_code = "36" -- New York State AND county_name IN ("Queens", "Kings", "New York") ), JSON_OBJECT( 'types', ["restaurant"], 'business_status', ['OPERATIONAL'] ) );
La tabella delle risposte avrà tre righe, una per ogni contea, che mostrano
geo_id, input_geography, place_count e sample_place_ids dei
ristoranti operativi.

Vantaggi dell'utilizzo di PLACES_COUNT_V2
PLACES_COUNT_V2 offre vantaggi significativi rispetto a PLACES_COUNT e
PLACES_COUNT_PER_GEO:
- Elaborazione batch:analizza in modo efficiente migliaia di aree geografiche personalizzate in un'unica query fornendo più input geografici in una tabella.
- Rendimento:utilizza unioni geospaziali ottimizzate di BigQuery, offrendo vantaggi significativi in termini di velocità per i set di dati di grandi dimensioni.
- Scalabilità:progettato per gestire un numero elevato di geografie di input senza le limitazioni delle dimensioni di un singolo parametro JSON.
- Conteggi pari a zero inclusi:
PLACES_COUNT_V2restituisce una riga per ognigeo_idfornito nella tabella di input. Se nessun luogo corrisponde ai criteri per una determinata area geografica, il valore diplace_countsarà 0. In questo modo, avrai un risultato per ogni area di input, così potrai vedere dove mancano i luoghi.