تابع PLACES_COUNT_PER_TYPE جدولی از تعداد موارد موجود برای هر نوع مکان مشخص شده در تابع را برمیگرداند. برای مثال، اگر انواع doctor ، hospital و pharmacy را جستجو کنید، پاسخ شامل جدولی با ردیف جداگانه برای هر نوع است.
از آنجا که تابع PLACES_COUNT_PER_TYPE یک جدول برمیگرداند، آن را با استفاده از عبارت FROM فراخوانی کنید.
پارامترهای ورودی:
الزامی : پارامتر فیلتر
geographyکه ناحیه جستجو را مشخص میکند. پارامترgeographyمقداری را میگیرد که توسط نوع داده BigQueryGEOGRAPHYتعریف شده است، که از نقاط، رشتههای خطی و چندضلعیها پشتیبانی میکند.برای مثالهایی از استفاده از انواع مختلف جغرافیای جستجو، مانند نماها و خطوط، به تابع
PLACES_COUNTمراجعه کنید.الزامی : پارامتر فیلتر
typesکه انواع مکان مورد جستجو را مشخص میکند.اختیاری : پارامترهای فیلتر اضافی برای اصلاح جستجوی شما.
بازده:
جدولی با یک ردیف به ازای هر نوع داده (
typesvalue). این جدول شامل ستونهایtype(STRING)،count(INT64) وplace_ids(ARRAY<STRING>) است که در آن شناسههایplace_ids) برای هرtypeمیتواند تا ۲۵۰ عدد باشد.
مثال: تعداد رستورانها، کافهها و بارها را برگردانید
در این مثال، شما به دنبال تمام رستورانها، کافهها و بارهای فعال در ناحیه جستجوی مشخص شده که به صورت یک چندضلعی در شهر نیویورک تعریف شده است، میگردید.
پارامتر types آرایهای از مقادیر STRING را میگیرد که انواع مکان مورد جستجو را مشخص میکند. برای لیست کامل مقادیر ممکن، به Place types مراجعه کنید.
این مثال همچنین از تابع BigQuery ST_GEOGFROMTEXT برای بازگرداندن مقدار GEOGRAPHY از یک چندضلعی استفاده میکند.
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'] ) );
این تابع یک جدول با سه ردیف، هر ردیف برای یک نوع، برمیگرداند:
