با استفاده از داده های برندها یک پرس و جو بنویسید

Places Insights اطلاعات برند را برای بسیاری از دسته‌های مکان‌ها ارائه می‌کند. به عنوان مثال:

  • برای دسته «دستگاه‌های خودپرداز، بانک‌ها و اتحادیه‌های اعتباری»، داده‌های برند حاوی ورودی برای هر یک از بانک‌های تجاری PNC، UBS و Chase است.
  • برای دسته "اجاره خودرو"، داده ها حاوی ورودی برای هر یک از مارک های Budget، Hertz، و Thrifty هستند.

یک مورد استفاده معمول برای پرس و جو از مجموعه داده برندها، پیوستن به آن با یک پرس و جو در مورد داده های مکان برای پاسخ به سوالاتی مانند:

  • تعداد همه فروشگاه ها بر اساس برند در یک منطقه چقدر است؟
  • تعداد سه برند برتر رقیب من در منطقه چقدر است؟
  • تعداد برندهای یک دسته خاص مانند "فیتنس" یا "پمپ بنزین" در منطقه چقدر است؟

درباره مجموعه داده برندها

مجموعه داده برندها برای ایالات متحده places_insights___us___sample.brands نام دارد.

شمای مجموعه داده برندها

طرح واره مجموعه داده برندها سه فیلد را تعریف می کند:

  • id : شناسه برند.
  • name : نام تجاری، مانند "Hertz" یا "Chase".
  • category : نوع برند، مانند "پمپ بنزین"، "غذا و نوشیدنی"، یا "مسکن". برای لیستی از مقادیر ممکن، به مقادیر دسته مراجعه کنید

از مجموعه داده برندها در یک پرس و جو استفاده کنید

طرح مجموعه داده مکان ها فیلد brand_ids را تعریف می کند. اگر مکانی در مجموعه داده مکان ها با یک برند مرتبط باشد، فیلد brand_ids برای مکان حاوی شناسه برند مربوطه است.

یک پرس و جو معمولی که به مجموعه داده برندها ارجاع می دهد، یک JOIN با مجموعه داده مکان ها بر اساس فیلد brand_ids انجام می دهد.

به عنوان مثال، برای یافتن تعداد رستوران های مک دونالد در فاصله 2000 متری ساختمان امپایر استیت در شهر نیویورک:

SELECT WITH AGGREGATION_THRESHOLD
 COUNT(*)
FROM places_insights___us___sample.places_sample places, UNNEST(brand_ids) AS brand_id
LEFT JOIN 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"

پرس و جو بعدی تعداد کافه‌های شهر نیویورک را که به یک برند تعلق دارند، بر اساس نام تجاری گروه‌بندی می‌کند:

SELECT WITH AGGREGATION_THRESHOLD
  brands.name,
  COUNT(*) AS store_count
FROM places_insights___us___sample.places_sample places, UNNEST(brand_ids) AS brand_id
LEFT JOIN 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;

تصویر زیر تعداد را بر اساس برند نشان می دهد:

نتایج پرس و جو برای شمارش cfes گروه بندی شده بر اساس نام تجاری.

مقادیر مقوله

فیلد category برای یک نام تجاری می تواند حاوی مقادیر زیر باشد:

مقدار نوع دسته
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