La funzione PLACES_COUNT_PER_TYPE_V2 restituisce una tabella BigQuery contenente
conteggi dei luoghi e ID luogo di esempio, suddivisi per tipo di luogo, per più
geografie di input. Questa funzione è progettata per l'elaborazione batch efficiente accettando un parametro della tabella di input di aree geografiche. Fornisci le aree geografiche tramite una tabella di input e specifica
i tipi di luogo come array.
Sintassi
SELECT * FROM `PROJECT_NAME.LINKED_DATASET_NAME.PLACES_COUNT_PER_TYPE_V2`( TABLE input_geographies, target_types, 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:target_types(ARRAY<STRING>): un array di stringhe di tipo di luogo per cui vuoi ottenere i conteggi. I luoghi verranno conteggiati se corrispondono a uno qualsiasi dei tipi elencati nel relativo arraytypes, non solo aprimary_type.filters(JSON): un oggetto JSON contenente coppie chiave-valore per il filtro aggiuntivo dei luoghi. Vedi Parametri del filtro.
Schema della tabella di output
La funzione PLACES_COUNT_PER_TYPE_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_type |
STRING | Il tipo di luogo dell'array target_types rappresentato da questa riga. |
place_count |
INTEGER | Il numero di luoghi che corrispondono a place_type e ad altri filtri all'interno o in prossimità dell'area geografica. |
sample_place_ids |
ARRAY<STRING> | Un array di massimo 250 ID luogo che corrispondono ai criteri per questo tipo e questa area geografica. |
L'output conterrà una riga per ogni combinazione di geo_id e place_type
specificata nell'array target_types, anche se il conteggio è zero.
Come funziona
La funzione elabora ogni località fornita nella tabella input_geographies.
Per ogni area geografica, vengono conteggiati i luoghi che corrispondono a uno qualsiasi dei tipi elencati nella matrice target_types e che soddisfano anche tutte le condizioni nell'oggetto JSON filters. I risultati vengono aggregati e suddivisi per ogni geo_id e
per ogni tipo in target_types.
Esempio: conteggio di diversi tipi di ristoranti nelle contee di New York
Questo esempio genera una tabella dei conteggi per i tipi "ristorante", "caffè" e "bar" in tre contee di New York City.
SELECT geo_id, input_geography, place_type, place_count FROM `PROJECT_NAME.places_insights___us.PLACES_COUNT_PER_TYPE_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") ), ['restaurant', 'cafe', 'bar'], -- target_types JSON_OBJECT( 'business_status', ['OPERATIONAL'] ) );
Il risultato sarà una tabella con 9 righe (3 contee * 3 tipi). Ogni riga mostrerà il conteggio di "ristoranti", "caffè" o "bar" all'interno di ogni contea. Puoi anche includere ID luogo di esempio se li aggiungi all'istruzione SELECT.

Vantaggi dell'utilizzo di PLACES_COUNT_PER_TYPE_V2
PLACES_COUNT_PER_TYPE_V2 offre diversi vantaggi chiave, in particolare se confrontato con la funzione PLACES_COUNT_PER_TYPE precedente:
- Elaborazione batch delle aree geografiche:a differenza di
PLACES_COUNT_PER_TYPE, che elabora un'area geografica alla volta,PLACES_COUNT_PER_TYPE_V2accetta unTABLEdi aree geografiche di input. In questo modo puoi analizzare e ottenere conteggi specifici per tipo in numerose aree geografiche (punti, poligoni) in una singola query, anziché effettuare più chiamate di funzioni. - Prestazioni e scalabilità migliorate: prendendo come input una tabella,
PLACES_COUNT_PER_TYPE_V2può sfruttare i join spaziali ottimizzati di BigQuery e le funzionalità di elaborazione parallela in tutte le aree geografiche fornite contemporaneamente. Ciò comporta miglioramenti significativi delle prestazioni e una migliore scalabilità quando si ha a che fare con un numero elevato di località. - Conteggi pari a zero inclusi:restituisce righe con conteggi pari a 0 per i tipi non trovati in un'area specifica all'interno del batch, garantendo un insieme completo di risultati per tutte le combinazioni di tipo e area geografica.