A função PLACES_COUNT_V2 retorna uma tabela do BigQuery com contagens de lugares e IDs de lugar de amostra para várias regiões geográficas de entrada com base em filtros especificados.
Essa função foi projetada para o processamento em lote eficiente. Ela aceita um parâmetro de tabela de entrada de regiões geográficas, permitindo analisar muitas áreas de interesse em uma única consulta ao fornecer as regiões em uma tabela de entrada.
Sintaxe
SELECT * FROM `PROJECT_NAME.LINKED_DATASET_NAME.PLACES_COUNT_V2`( TABLE input_geographies, filters )
Parâmetros
PROJECT_NAME: o nome do seu projeto do Google Cloud;LINKED_DATASET_NAME: o nome do conjunto de dados do BigQuery que contém as funções do Insights de Lugares (por exemplo,places_insights___us).input_geographies: uma tabela do BigQuery com as regiões geográficas a serem analisadas. Essa tabela precisa incluir as seguintes colunas:filters(JSON): um objeto JSON que contém pares de chave-valor para filtrar os lugares. Consulte Parâmetros de filtro.
Esquema da tabela de saída
A função PLACES_COUNT_V2 retorna uma tabela com as seguintes colunas:
| Nome da coluna | Tipo de dados | Descrição |
|---|---|---|
geo_id |
STRING | O identificador exclusivo da geografia de entrada, da tabela input_geographies. |
input_geography |
GEOGRAPHY | O objeto GEOGRAPHY original da tabela input_geographies. |
place_count |
INTEGER | O número total de lugares que correspondem aos filtros. |
sample_place_ids |
ARRAY<STRING> | Uma matriz de até 250 IDs de lugar que correspondem aos critérios. |
Como funciona
A função processa cada linha na tabela input_geographies. Para cada objeto geo, ele conta o número de lugares que estão dentro da geografia (ou dentro do geography_radius se o geo for um ponto e o raio for especificado no filters). A contagem inclui apenas os lugares que correspondem a todas as condições definidas no objeto JSON filters.
Exemplo: calcular o número de restaurantes em três condados da cidade de Nova York
Este exemplo gera uma tabela com o número de restaurantes operacionais em três condados da cidade de Nova York.
Este exemplo usa o conjunto de dados públicos do BigQuery United States Census Bureau Data para extrair os limites de três condados na cidade de Nova York: "Queens", "Kings" e "New York". Os limites de cada município estão na coluna county_geom.
Primeiro, criamos uma tabela temporária new_york_counties para armazenar o geo_id e o GEOGRAPHY simplificado de cada município.
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'] ) );
A tabela de resposta terá três linhas, uma para cada município, mostrando o
geo_id, input_geography, place_count e sample_place_ids de
restaurantes em operação.

Benefícios de usar PLACES_COUNT_V2
O PLACES_COUNT_V2 oferece vantagens significativas em relação ao PLACES_COUNT e ao PLACES_COUNT_PER_GEO:
- Processamento em lote:analise milhares de regiões geográficas personalizadas de forma eficiente em uma única consulta fornecendo várias entradas de região em uma tabela.
- Performance:usa junções geoespaciais otimizadas do BigQuery, oferecendo vantagens significativas de velocidade para conjuntos de dados grandes.
- Escalonabilidade:projetado para processar um grande número de regiões de entrada sem as limitações de tamanho de um único parâmetro JSON.
- Contagens de zero incluídas:
PLACES_COUNT_V2retorna uma linha para cadageo_idfornecido na tabela de entrada. Se nenhum lugar corresponder aos critérios de uma determinada região geográfica, oplace_countserá 0. Isso garante que você tenha um resultado para cada área de entrada, assim é possível saber onde os lugares estão ausentes.