Hàm PLACES_COUNT_PER_TYPE_V2 trả về một bảng BigQuery chứa số lượng địa điểm và mã địa điểm mẫu, được phân tích theo loại địa điểm, cho nhiều vị trí địa lý đầu vào. Hàm này được thiết kế để xử lý hàng loạt một cách hiệu quả bằng cách chấp nhận một tham số bảng đầu vào về địa lý. Bạn cung cấp các vị trí địa lý thông qua một bảng đầu vào và chỉ định các loại địa điểm dưới dạng một mảng.
Cú pháp
SELECT * FROM `PROJECT_NAME.LINKED_DATASET_NAME.PLACES_COUNT_PER_TYPE_V2`( TABLE input_geographies, target_types, filters )
Thông số
PROJECT_NAME: Tên dự án trên đám mây của bạn trên Google Cloud.LINKED_DATASET_NAME: Tên của tập dữ liệu BigQuery chứa các hàm Thông tin chi tiết về địa điểm (ví dụ:places_insights___us).input_geographies: Bảng BigQuery chứa các khu vực địa lý cần phân tích. Bảng này phải có các cột sau:target_types(ARRAY<STRING>): Một mảng gồm các chuỗi loại địa điểm mà bạn muốn nhận số lượng. Địa điểm sẽ được tính nếu địa điểm đó khớp với bất kỳ loại nào được liệt kê trong mảngtypescủa địa điểm đó, chứ không chỉprimary_type.filters(JSON): Một đối tượng JSON chứa các cặp khoá-giá trị để lọc thêm các địa điểm. Xem Tham số bộ lọc.
Giản đồ bảng đầu ra
Hàm PLACES_COUNT_PER_TYPE_V2 trả về một bảng có các cột sau:
| Tên cột | Loại dữ liệu | Mô tả |
|---|---|---|
geo_id |
STRING | Giá trị nhận dạng duy nhất của địa lý đầu vào, từ bảng input_geographies. |
input_geography |
GEOGRAPHY | Đối tượng GEOGRAPHY ban đầu trong bảng input_geographies. |
place_type |
STRING | Loại địa điểm mà hàng này đại diện trong mảng target_types. |
place_count |
INTEGER | Số lượng địa điểm khớp với place_type và các bộ lọc khác trong hoặc gần khu vực địa lý. |
sample_place_ids |
ARRAY<STRING> | Một mảng gồm tối đa 250 mã địa điểm phù hợp với tiêu chí về loại và vị trí địa lý này. |
Đầu ra sẽ chứa một hàng cho mỗi tổ hợp geo_id và place_type được chỉ định trong mảng target_types, ngay cả khi số lượng bằng 0.
Cách hoạt động
Hàm này xử lý từng địa điểm được cung cấp trong bảng input_geographies.
Đối với mỗi khu vực địa lý, phương thức này sẽ đếm những địa điểm khớp với bất kỳ loại nào được liệt kê trong mảng target_types và cũng đáp ứng tất cả các điều kiện trong đối tượng JSON filters. Kết quả được tổng hợp và phân tích theo từng geo_id và từng loại trong target_types.
Ví dụ: Đếm số lượng các loại quán ăn ở các quận của Thành phố New York
Ví dụ này tạo một bảng số lượng cho các loại "nhà hàng", "quán cà phê" và "quán bar" trên 3 quận của Thành phố New York.
SELECT geo_id, input_geography, place_type, place_count FROM `PROJECT_NAME.places_insights___us.PLACES_COUNT_PER_TYPE_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") ), ['restaurant', 'cafe', 'bar'], -- target_types JSON_OBJECT( 'business_status', ['OPERATIONAL'] ) );
Kết quả sẽ là một bảng có 9 hàng (3 quận * 3 loại). Mỗi hàng sẽ cho biết số lượng cơ sở "nhà hàng", "quán cà phê" hoặc "quán bar" trong mỗi quận. Bạn cũng có thể thêm Mã địa điểm mẫu nếu thêm mã này vào câu lệnh SELECT.

Lợi ích của việc sử dụng PLACES_COUNT_PER_TYPE_V2
PLACES_COUNT_PER_TYPE_V2 mang lại một số lợi ích chính, đặc biệt là khi so sánh với hàm PLACES_COUNT_PER_TYPE cũ:
- Xử lý hàng loạt các khu vực địa lý: Không giống như
PLACES_COUNT_PER_TYPE(xử lý từng khu vực địa lý tại một thời điểm),PLACES_COUNT_PER_TYPE_V2chấp nhận mộtTABLEkhu vực địa lý đầu vào. Điều này cho phép bạn phân tích và nhận số lượng theo từng loại trên nhiều khu vực địa lý (điểm, đa giác) trong một truy vấn duy nhất, thay vì thực hiện nhiều lệnh gọi hàm. - Nâng cao hiệu suất và khả năng mở rộng: Bằng cách lấy dữ liệu đầu vào là bảng,
PLACES_COUNT_PER_TYPE_V2có thể tận dụng các phép kết hợp không gian địa lý được tối ưu hoá của BigQuery và khả năng xử lý song song trên tất cả các khu vực địa lý được cung cấp cùng một lúc. Điều này giúp cải thiện đáng kể hiệu suất và khả năng mở rộng khi xử lý một số lượng lớn các vị trí địa lý. - Bao gồm số lượng bằng 0: Trả về các hàng có số lượng bằng 0 cho những loại không có trong một khu vực cụ thể trong lô, đảm bảo một tập hợp kết quả đầy đủ cho tất cả các tổ hợp loại-địa lý.