由于您无法对 GEOGRAPHY 点执行 GROUP BY 操作,因此此查询使用 BigQuery ST_ASTEXT 函数将每个点转换为该点的 STRINGWKT 表示形式,并将该值写入 geo_txt 列。然后,使用 geo_txt 执行 GROUP BY。
SELECTgeo_txt,-- STRING WKT geometry value.ST_GEOGFROMTEXT(geo_txt)ASgeo,-- Convert STRING to GEOGRAPHY value.countFROM(-- Create STRING WKT representation of each GEOGRAPHY point to-- GROUP BY the STRING value.SELECTWITHAGGREGATION_THRESHOLDST_ASTEXT(ST_SNAPTOGRID(point,0.005))ASgeo_txt,COUNT(*)AScountFROM`PROJECT_NAME.places_insights___us___sample.places_sample`WHERE'restaurant'INUNNEST(types)ANDwheelchair_accessible_entrance=trueGROUPBYgeo_txt)
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["没有我需要的信息","missingTheInformationINeed","thumb-down"],["太复杂/步骤太多","tooComplicatedTooManySteps","thumb-down"],["内容需要更新","outOfDate","thumb-down"],["翻译问题","translationIssue","thumb-down"],["示例/代码问题","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2025-09-06。"],[],[],null,["Analysis and [business intelligence\ntools](https://cloud.google.com/bigquery/docs/data-analysis-tools-intro) are\ncrucial to helping you discover insights from your BigQuery data. BigQuery\nsupports several Google and third-party [data visualization\ntools](https://cloud.google.com/bigquery/docs/geospatial-visualize) that you can\nuse to analyze the results of your queries on Places Insights data, including:\n\n- Looker Studio\n- BigQuery Geo Viz\n- Colab notebooks\n- Google Earth Engine\n\nThe example below describes how to visualize your results in:\n\n- Looker Studio, a platform that lets you build and consume data visualizations, dashboards, and reports.\n- BigQuery Geo Viz, a geospatial data visualization tool in BigQuery using Google Maps APIs.\n\nSee the [BigQuery\ndocumentation](https://cloud.google.com/bigquery/docs/geospatial-visualize) for\nmore information on visualizing your data using other tools.\n\nQuery data to visualize\n\nThe visualization examples below use the following query to generate a count of\nrestaurants in New York City with a wheelchair accessible entrance.\nThis query returns a table of restaurant\ncounts per geographical *point* where the size of each point is 0.005 degrees.\n\nBecause you cannot perform a `GROUP BY` operation on a `GEOGRAPHY` point, this\nquery uses the BigQuery\n[`ST_ASTEXT`](https://cloud.google.com/bigquery/docs/reference/standard-sql/geography_functions#st_astext)\nfunction to convert each point into the `STRING`\n[WKT](https://en.wikipedia.org/wiki/Well-known_text) representation of the\npoint, and writes that value to the `geo_txt` column. It then performs the\n`GROUP BY` using `geo_txt`. \n\n```googlesql\nSELECT\n geo_txt, -- STRING WKT geometry value.\n ST_GEOGFROMTEXT(geo_txt) AS geo, -- Convert STRING to GEOGRAPHY value.\n count\nFROM (\n -- Create STRING WKT representation of each GEOGRAPHY point to\n -- GROUP BY the STRING value.\n SELECT WITH AGGREGATION_THRESHOLD\n ST_ASTEXT(ST_SNAPTOGRID(point, 0.005)) AS geo_txt,\n COUNT(*) AS count\n FROM\n `places_insights___us___sample.places_sample`\n WHERE\n 'restaurant' IN UNNEST(types)\n AND wheelchair_accessible_entrance = true\n GROUP BY\n geo_txt\n)\n```\n\nThe following image shows an example output to this query where `count`\ncontains the number of restaurants for each point:\n\nVisualize data using Looker Studio\n\nThe following images show this data displayed in Looker Studio as a heatmap. The\nheatmap shows density from low (green) to high (red).\n\nImport your data into Looker Studio\n\nTo import your data into Looker Studio:\n\n1. Run the query above in [Query data to visualize](#query_data_to_visualize).\n\n2. In the BigQuery results, click **Open in -\\\u003e Looker Studio**. Your results\n are automatically imported into Looker Studio.\n\n3. Looker Studio creates a default report page and initializes it with a title,\n table, and bar graph of the results.\n\n4. Select everything on the page and delete it.\n\n5. Click **Insert -\\\u003e Heatmap** to add a heatmap to your report.\n\n6. Under **Chart types -\\\u003e Setup** configure the fields as shown below::\n\n7. The heatmap appears as above. You can optionally select **Chart types -\\\u003e\n Styles** to further configure the appearance of the map.\n\nVisualize data using BigQuery Geo Viz\n\nThe following images show this data displayed in BigQuery Geo Viz as a filled\nmap. The filled map shows the restaurant density by point cell, where the larger\nthe point corresponds to the higher density.\n\nImport your data into BigQuery Geo Viz\n\nTo import your data into BigQuery Geo Viz:\n\n1. Run the query above in [Query data to visualize](#query_data_to_visualize).\n\n2. In the BigQuery results, click **Open in -\\\u003e GeoViz**.\n\n3. The display opens to the **Query** step.\n\n4. Select the **Run** button to run the query. The map automatically shows\n the points on the map.\n\n5. Select **Data** to view the data.\n\n6. In the **Data** section, click the **Add styles** button.\n\n7. Select **fillColor** and then use the slider to enable **Data-driven**\n styling.\n\n8. Set the remaining fields as shown below:\n\n9. Click **Apply Style** to apply the styles to the map."]]