Funkcje zliczania miejsc to kolejny sposób na wysyłanie zapytań dotyczących danych z Miejsc dostępnych w Statystykach miejsc. Są to predefiniowane zapytania SQL, które są uruchamiane w BigQuery i stanowią uzupełnienie zapytań o dane o miejscach. Główna różnica polega na tym, że funkcje nie wymuszają minimalnego progu liczby, ale minimalny obszar wyszukiwania:
Zapytania dotyczące zbiorów danych o miejscach mogą zwracać tylko liczby powyżej 5, ale nie mają ograniczeń co do wielkości obszaru wyszukiwania.
Funkcje zliczania miejsc mogą zwracać dowolne liczby, w tym 0, ale wymagają minimalnego obszaru wyszukiwania o wymiarach 40,0 m × 40,0 m (1600 m2).
Funkcje liczby miejsc mogą być przydatne, jeśli chcesz wiedzieć, kiedy zapytanie nie zwraca żadnych wyników, lub gdy potrzebujesz informacji o małej liczbie miejsc (poniżej 5). Na przykład możliwość zwracania niskich wartości jest ważna w przypadku zastosowań związanych z wyborem witryn.
Obsługiwane funkcje zliczania miejsc i kraje
Places Insights obsługuje te funkcje:
PLACES_COUNT
: zwraca jeden wiersz zawierający liczbę miejsc.PLACES_COUNT_PER_TYPE
: zwraca tabelę BigQuery z liczbą miejsc według typu.PLACES_COUNT_PER_GEO
: zwraca tabelę BigQuery z liczbą miejsc w poszczególnych obszarach geograficznych.PLACES_COUNT_PER_H3
: zwraca tabelę BigQuery z liczbą miejsc w każdej komórce H3.
Oprócz liczby miejsc funkcje PLACES_COUNT_PER_TYPE
, PLACES_COUNT_PER_GEO
i PLACES_COUNT_PER_H3
zwracają też maksymalnie 250 identyfikatorów miejsc w każdym elemencie odpowiedzi.
Podobnie jak w przypadku zbiorów danych o miejscach, funkcje zliczania miejsc są dostępne dla największego miasta w każdym z obsługiwanych krajów. Na przykład w przypadku Australii możesz uzyskać dostęp do funkcji zliczania miejsc w Sydney.
Pełną listę obsługiwanych miast i krajów znajdziesz w artykule Funkcje zliczania miejsc referencyjnych w BigQuery.
Tworzenie zapytań z użyciem funkcji
Jeśli podczas konfigurowania Statystyk miejsc zmienisz nazwę połączonego zbioru danych, użyj swojej niestandardowej nazwy zamiast domyślnych nazw tabel wymienionych tutaj. Możesz też opcjonalnie podać nazwę projektu. Jeśli nie zostanie podany, zapytanie zostanie domyślnie skierowane do aktywnego projektu. Na przykład [project name].[dataset
name].places_sample.PLACES_COUNT
.
Przykład funkcji zliczania miejsc
W tym przykładzie użyto funkcji PLACES_COUNT
, aby zwrócić liczbę działających restauracji w promieniu 1000 metrów od Empire State Building w Nowym Jorku:
SELECT `places_insights___us___sample.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;
Odpowiedź zawiera jedną liczbę:
W tym przykładzie instrukcja SELECT
odwołuje się do funkcji PLACES_COUNT
w przypadku Stanów Zjednoczonych, używając składni:
places_insights___us___sample.PLACES_COUNT
Pełną listę obsługiwanych miast i krajów znajdziesz w artykule Funkcje zliczania miejsc referencyjnych w BigQuery.
Użyj znaku
JSON_OBJECT
, aby przekazać argumenty do funkcji. W tym przykładzie użyto funkcji BigQuery
ST_GEOGPOINT
do zwrócenia wartości GEOGRAPHY
z punktu, a następnie przekazania tej wartości do parametru geography
. Przekazuje też promień wyszukiwania wokół punktu i typ miejsca, "restaurant"
, do wyszukania.
Liczba miejsc według typu, lokalizacji geograficznej lub H3
Oprócz liczby miejsc funkcje PLACES_COUNT_PER_TYPE
, PLACES_COUNT_PER_GEO
i PLACES_COUNT_PER_H3
zwracają też maksymalnie 250 identyfikatorów miejsc uwzględnionych w odpowiedzi.
Na przykład funkcja PLACES_COUNT_PER_TYPE
zwraca tabelę z liczbą miejsc według typu miejsca. Odpowiedź zawiera tablicę identyfikatorów miejsc, które pasują do każdego typu. Zwrócone identyfikatory miejsc możesz wykorzystać do wyszukiwania informacji o poszczególnych miejscach.
Poniższe wywołanie funkcji zwraca liczbę miejsc o tych typach: restaurant
, cafe
i bar
:
SELECT * FROM `places_insights___us___sample.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'] ) );
Ta funkcja zwraca tabelę z 3 kolumnami: type
, count
i sample_place_ids
. Kolumna count
zawiera liczbę miejsc dla każdego type
, a kolumna sample_place_ids
zawiera maksymalnie 250 identyfikatorów miejsc dla każdego type
.
Stosowanie filtrów do funkcji
Zastosuj filtry, aby zawęzić kryteria wyszukiwania. Funkcje zliczania miejsc obsługują wiele filtrów, które pozwalają zawęzić wyszukiwanie. W kolejnym przykładzie zastosujesz filtry, aby ograniczyć wyszukiwanie według minimalnej oceny użytkowników, poziomu cen, statusu firmy i tego, czy restauracja akceptuje psy:
SELECT `places_insights___us___sample.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;
Wizualizacja wyników
Narzędzia do analizy i analityki biznesowej są niezbędne, aby pomóc Ci odkrywać statystyki na podstawie danych z BigQuery. BigQuery obsługuje kilka narzędzi do wizualizacji danych Google i innych firm, których możesz używać do analizowania wyników funkcji na podstawie danych Places Insights.
Przykład wizualizacji wyników funkcji znajdziesz w sekcji Wizualizacja wyników. Więcej informacji i przykłady wizualizacji wyników Places Insights znajdziesz w artykule Wizualizacja wyników zapytania.
Ograniczenia i wymagania
Funkcje zliczania miejsc mają te ograniczenia i wymagania:
- Obsługiwane są tylko statystyki
COUNT
. - Wymagany jest minimalny obszar wyszukiwania o wymiarach 40,0 m × 40,0 m (1600 m2).
- Rozmiar danych wejściowych parametru liczby funkcji miejsca jest ograniczony do 1 MB.
- Brak obsługi filtrowania według identyfikatora miejsca lub komponentu adresu.
Porównywanie funkcji zliczania miejsc i zapytań dotyczących zbioru danych o miejscach
W tej tabeli wymieniamy najważniejsze różnice:
Funkcje zliczania miejsc | Zapytania dotyczące zbioru danych o miejscach | |
---|---|---|
Interfejs | 4 wstępnie zdefiniowane funkcje SQL, które generują COUNT statystyki: pojedyncza liczba, liczba według typu, liczba według lokalizacji geograficznej, liczba według komórki H3. |
Używa SQL do uruchamiania funkcji agregacji, takich jak COUNT, COUNT_IF, SUM i AVG. . Dodatkowe statystyki można generować za pomocą funkcji JOIN, GROUP BY, WHERE i innych. |
Ograniczenia | Wymusza minimalny obszar wyszukiwania o wymiarach 40,0 m × 40,0 m (1600 m2). Funkcja zwraca wynik nawet wtedy, gdy liczba agregacji jest mniejsza niż 5, o ile spełniony jest minimalny obszar wyszukiwania. | Wymusza próg liczby 5, ale nie określa minimalnego obszaru wyszukiwania. |
Obsługiwane filtry atrybutów | Pełny schemat jest obsługiwany z wyjątkiem:
|
Pełny schemat jest obsługiwany |
Zalety |
|
|
Funkcje liczby miejsc odniesienia w BigQuery
Funkcje liczby miejsc obsługują te miasta i kraje. Musisz zasubskrybować każde miasto i każdy kraj osobno.
Miasto, kraj | Nazwy tabel |
---|---|
Sydney, Australia | places_insights___au___sample.FUNCTION_NAME |
São Paulo, Brazylia | places_insights___br___sample.FUNCTION_NAME |
Toronto, Kanada | places_insights___ca___sample.FUNCTION_NAME |
Paryż, Francja | places_insights___fr___sample.FUNCTION_NAME |
Berlin, Niemcy | places_insights___de___sample.FUNCTION_NAME |
Londyn, Wielka Brytania | places_insights___gb___sample.FUNCTION_NAME |
Bombaj, Indie | places_insights___in___sample.FUNCTION_NAME |
Dżakarta, Indonezja | places_insights___id___sample.FUNCTION_NAME |
Rzym, Włochy | places_insights___it___sample.FUNCTION_NAME |
Tokio, Japonia | places_insights___jp___sample.FUNCTION_NAME |
Meksyk (miasto), Meksyk | places_insights___mx___sample.FUNCTION_NAME |
Madryt, Hiszpania | places_insights___es___sample.FUNCTION_NAME |
Zurych, Szwajcaria | places_insights___ch___sample.FUNCTION_NAME |
Nowy Jork, Stany Zjednoczone | places_insights___us___sample.FUNCTION_NAME |