ฟังก์ชัน PLACES_COUNT_V2 จะแสดงผลตาราง BigQuery ที่มีจำนวนสถานที่
และรหัสสถานที่ตัวอย่างสำหรับภูมิศาสตร์อินพุตหลายรายการตามตัวกรองที่ระบุ
ฟังก์ชันนี้ออกแบบมาเพื่อการประมวลผลแบบกลุ่มที่มีประสิทธิภาพโดยยอมรับพารามิเตอร์ตาราง
อินพุต
ของภูมิศาสตร์ ซึ่งช่วยให้คุณวิเคราะห์พื้นที่ที่สนใจหลายแห่งในการค้นหาเดียวได้
โดยระบุภูมิศาสตร์ผ่านตารางอินพุต
ไวยากรณ์
SELECT * FROM `PROJECT_NAME.LINKED_DATASET_NAME.PLACES_COUNT_V2`( TABLE input_geographies, filters )
พารามิเตอร์
PROJECT_NAME: ชื่อโปรเจ็กต์ Google CloudLINKED_DATASET_NAME: ชื่อชุดข้อมูล BigQuery ที่มีฟังก์ชันข้อมูลเชิงลึกเกี่ยวกับสถานที่ (เช่นplaces_insights___us)input_geographies: ตาราง BigQuery ที่มีภูมิศาสตร์ที่จะวิเคราะห์ ตารางนี้ต้องมีคอลัมน์ต่อไปนี้filters(JSON): ออบเจ็กต์ JSON ที่มีคู่คีย์-ค่าสำหรับการกรองสถานที่ ดูพารามิเตอร์ตัวกรอง
สคีมาของตารางเอาต์พุต
ฟังก์ชัน PLACES_COUNT_V2 จะแสดงผลตารางที่มีคอลัมน์ต่อไปนี้
| ชื่อคอลัมน์ | ประเภทข้อมูล | คำอธิบาย |
|---|---|---|
geo_id |
STRING | ตัวระบุที่ไม่ซ้ำกันสำหรับภูมิศาสตร์อินพุตจากตาราง input_geographies |
input_geography |
GEOGRAPHY | ออบเจ็กต์ GEOGRAPHY เดิมจากตาราง input_geographies |
place_count |
INTEGER | จำนวนสถานที่ทั้งหมดที่ตรงกับตัวกรอง |
sample_place_ids |
ARRAY<STRING> | อาร์เรย์ของรหัสสถานที่สูงสุด 250 รายการที่ตรงกับเกณฑ์ |
วิธีการทำงาน
ฟังก์ชันจะประมวลผลแต่ละแถวในตาราง input_geographies สำหรับออบเจ็กต์ geo แต่ละรายการ ระบบจะนับจำนวนสถานที่ที่อยู่ในภูมิศาสตร์ (หรือภายใน geography_radius หาก geo เป็นจุดและมีการระบุรัศมีใน filters) การนับจะรวมเฉพาะสถานที่ที่ตรงกับเงื่อนไขทั้งหมดที่กำหนดไว้ในออบเจ็กต์ JSON ของ filters
ตัวอย่าง: คำนวณจำนวนร้านอาหารใน 3 เขตของนิวยอร์กซิตี้
ตัวอย่างนี้สร้างตารางจำนวนร้านอาหารที่เปิดให้บริการใน 3 เขต ของนครนิวยอร์ก
ตัวอย่างนี้ใช้สำนักสำรวจสำมะโนประชากรสหรัฐอเมริกา
ข้อมูล
ชุดข้อมูลสาธารณะ BigQuery เพื่อรับ
ขอบเขตของ 3 เขตในนิวยอร์กซิตี้ ได้แก่ "ควีนส์" "คิงส์" และ "นิวยอร์ก" ขอบเขตของแต่ละเทศมณฑลจะอยู่ในคอลัมน์ county_geom
ก่อนอื่นเราจะสร้างตารางชั่วคราว new_york_counties เพื่อเก็บ geo_id และGEOGRAPHY แบบย่อสำหรับแต่ละเทศมณฑล
SELECT * FROM `PROJECT_NAME.places_insights___us.PLACES_COUNT_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") ), JSON_OBJECT( 'types', ["restaurant"], 'business_status', ['OPERATIONAL'] ) );
ตารางการตอบกลับจะมี 3 แถว แถวละ 1 แถวสำหรับแต่ละเทศมณฑล โดยจะแสดง
geo_id, input_geography, place_count และ sample_place_ids ของ
ร้านอาหารที่เปิดให้บริการ

ประโยชน์ของการใช้ PLACES_COUNT_V2
PLACES_COUNT_V2 มีข้อได้เปรียบที่สำคัญมากกว่าทั้ง PLACES_COUNT และ PLACES_COUNT_PER_GEO ดังนี้
- การประมวลผลเป็นกลุ่ม: วิเคราะห์ภูมิศาสตร์ที่กำหนดเองหลายพันรายการในการค้นหาเดียวได้อย่างมีประสิทธิภาพโดยระบุข้อมูลภูมิศาสตร์หลายรายการในตาราง
- ประสิทธิภาพ: ใช้การรวมเชิงพื้นที่ที่ได้รับการเพิ่มประสิทธิภาพของ BigQuery ซึ่งให้ข้อได้เปรียบด้านความเร็วอย่างมากสำหรับชุดข้อมูลขนาดใหญ่
- ความสามารถในการปรับขนาด: ออกแบบมาเพื่อรองรับข้อมูลทางภูมิศาสตร์จำนวนมากโดยไม่มีข้อจำกัดด้านขนาดพารามิเตอร์ JSON เดียว
- รวมจำนวนเป็น 0:
PLACES_COUNT_V2จะแสดงแถวสำหรับทุกgeo_idที่ระบุในตารางอินพุต หากไม่มีสถานที่ที่ตรงกับเกณฑ์สำหรับ ภูมิศาสตร์ที่ระบุplace_countจะเป็น 0 วิธีนี้ช่วยให้คุณมีผลลัพธ์สำหรับ แต่ละพื้นที่ป้อนข้อมูล เพื่อให้คุณเห็นว่าไม่มีสถานที่ใด