Marka verilerini kullanarak sorgu yazma

Places Insights, birçok yer kategorisi için marka bilgileri sağlar. Örneğin:

  • "ATM'ler, Bankalar ve Kredi Birlikleri" kategorisinde, marka verileri PNC, UBS ve Chase bankalarının her biri için bir giriş içerir.
  • "Araç Kiralama" kategorisinde, Budget, Hertz ve Thrifty markalarının her biri için bir giriş bulunur.

Markalar veri kümesini sorgulamak için tipik bir kullanım alanı, aşağıdaki gibi soruları yanıtlamak üzere yer verileriyle ilgili bir sorguyla birleştirmektir:

  • Bir bölgedeki tüm mağazaların markaya göre sayısı nedir?
  • Bölgedeki en iyi üç rakip markamın sayısı nedir?
  • Bölgedeki "Fitness" veya "Benzin İstasyonu" gibi belirli bir kategorideki marka sayısı nedir?

Markalar veri kümesi hakkında

ABD'ye yönelik markalar veri kümesinin adı places_insights___us___sample.brands'dır.

Markalar veri kümesi şeması

Markalar veri kümesinin şeması üç alan tanımlar:

  • id: Marka kimliği.
  • name: "Hertz" veya "Chase" gibi marka adı.
  • category: "Benzin İstasyonu", "Yiyecek ve İçecek" veya "Konaklama" gibi marka türü. Olası değerlerin listesi için Kategori değerleri bölümüne bakın.

Sorguda markalar veri kümesini kullanma

Yer veri kümesi şeması, brand_ids alanını tanımlar. Yer kümesindeki bir yer bir markayla ilişkiliyse yerin brand_ids alanında ilgili marka kimliği yer alır.

brands veri kümesine başvuran tipik bir sorgu, brand_ids alanına göre places veri kümesiyle JOIN işlemi gerçekleştirir.

Örneğin, New York City'deki Empire State Binası'nın 2.000 metre yarıçapındaki McDonald's restoranlarının sayısını bulmak için:

SELECT WITH AGGREGATION_THRESHOLD
 COUNT(*)
FROM PROJECT_NAME.places_insights___us___sample.places_sample places, UNNEST(brand_ids) AS brand_id
LEFT JOIN PROJECT_NAME.places_insights___us___sample.brands ON brand_id = brands.id
WHERE
ST_DWITHIN(ST_GEOGPOINT(-73.9857, 40.7484), point, 2000)
AND brands.name = "McDonald's"
AND business_status = "OPERATIONAL"

Aşağıdaki sorgu, New York City'deki bir markaya ait kafelerin sayısını marka adına göre gruplandırarak döndürür:

SELECT WITH AGGREGATION_THRESHOLD
  brands.name,
  COUNT(*) AS store_count
FROM PROJECT_NAME.places_insights___us___sample.places_sample places, UNNEST(brand_ids) AS brand_id
LEFT JOIN PROJECT_NAME.places_insights___us___sample.brands ON brand_id = brands.id
WHERE brands.category = "Food and Drink"
AND "cafe" IN UNNEST(places.types)
AND business_status = "OPERATIONAL"
GROUP BY brands.name
ORDER BY store_count DESC;

Aşağıdaki resimde markaya göre sayı gösterilmektedir:

Markaya göre gruplandırılmış, cfeleri saymaya yönelik sorgu sonuçları.

Kategori değerleri

Bir markanın category alanı aşağıdaki değerleri içerebilir:

Kategori türü değeri
ATMs, Banks and Credit Unions
Automotive and Parts Dealers
Automotive Rentals
Automotive Services
Dental
Electric Vehicle Charging Stations
Electronics Retailers
Fitness
Food and Drink
Gas Station
Grocery and Liquor
Health and Personal Care Retailers
Hospital
Lodging
Merchandise Retail
Movie Theater
Parking
Telecommunications