Hàm PLACES_COUNT_PER_TYPE

Hàm PLACES_COUNT_PER_TYPE trả về một bảng số lượng cho từng loại địa điểm được chỉ định cho hàm. Ví dụ: nếu bạn tìm kiếm các loại doctor, hospitalpharmacy, thì phản hồi sẽ chứa một bảng có một hàng riêng cho từng loại.

Vì hàm PLACES_COUNT_PER_TYPE trả về một bảng, hãy gọi hàm này bằng cách sử dụng mệnh đề FROM.

  • Tham số đầu vào:

    • Bắt buộc: Tham số geography bộ lọc chỉ định khu vực tìm kiếm. Tham số geography nhận một giá trị do kiểu dữ liệu GEOGRAPHY của BigQuery xác định, hỗ trợ các điểm, chuỗi đường thẳng và đa giác.

      Để xem ví dụ về cách sử dụng các loại khu vực địa lý tìm kiếm khác nhau, chẳng hạn như khung nhìn và đường thẳng, hãy xem PLACES_COUNT hàm.

    • Bắt buộc: types Tham số bộ lọc chỉ định các loại địa điểm cần tìm.

    • Không bắt buộc: Các tham số bộ lọc bổ sung để tinh chỉnh kết quả tìm kiếm.

  • Trả về:

    • Một bảng có một hàng cho mỗi giá trị types. Bảng này chứa các cột type (STRING), count (INT64) và place_ids (ARRAY<STRING>), trong đó place_ids chứa tối đa 250 mã địa điểm cho mỗi type.

Ví dụ: Trả về số lượng nhà hàng, quán cà phê và quán bar

Trong ví dụ này, bạn tìm kiếm tất cả nhà hàng, quán cà phê và quán bar đang hoạt động trong khu vực tìm kiếm được chỉ định, được xác định là một đa giác ở Thành phố New York.

Tham số types nhận một mảng giá trị STRING chỉ định các loại địa điểm cần tìm. Để biết danh sách đầy đủ các giá trị có thể có, hãy xem Các loại địa điểm.

Ví dụ này cũng sử dụng hàm của BigQuery ST_GEOGFROMTEXT để trả về giá trị GEOGRAPHY từ một đa giác.

DECLARE geo GEOGRAPHY;
SET geo = ST_GEOGFROMTEXT('''POLYGON((-73.985708 40.75773,-73.993324 40.750298,
                                      -73.9857 40.7484,-73.9785 40.7575,
                                      -73.985708 40.75773))''');  -- NYC viewport

SELECT * FROM `PROJECT_NAME.places_insights___us.PLACES_COUNT_PER_TYPE`(
  JSON_OBJECT(
      'types', ["restaurant", "cafe", "bar"],
      'geography', geo,
      'business_status', ['OPERATIONAL']
      )
);

Hàm này trả về một bảng có 3 hàng, mỗi hàng cho một loại:

Kết quả cho hàm Loại số lượng địa điểm ở Thành phố New York.

Ví dụ: Trả về số lượng theo loại được lọc theo thương hiệu

Ví dụ sau đây sử dụng bộ lọc brand_ids để truy xuất số lượng theo loại cho các thương hiệu cụ thể, chẳng hạn như Starbucks có mã nhận dạng "1413758728321880760":

DECLARE geo GEOGRAPHY;
SET geo = ST_GEOGFROMTEXT('POLYGON((-73.985708 40.75773,-73.993324 40.750298,
                                      -73.9857 40.7484,-73.9785 40.7575,
                                      -73.985708 40.75773))');  -- NYC viewport

SELECT * FROM `PROJECT_NAME.places_insights___us.PLACES_COUNT_PER_TYPE`(
  JSON_OBJECT(
      'types', ["cafe", "restaurant"],
      'geography', geo,
      'brand_ids', ["1413758728321880760"], -- Filter for Starbucks
      'business_status', ['OPERATIONAL']
      )
);