SELECT vector FROM vector_tile ( 'PUBLIC', 'division_info_tbl_tmp', 8, 213, 103, SELECT ST_AsMVTGeom ( geom_3857, $1 ) AS geom, division_code FROM PUBLIC.division_info_tbl_tmp WHERE ST_Intersects ( geom_3857, $2 ) AND division_level = '1' ) SELECT ST_AsMVT ( mvt_geom.*, $3 ) AS tile FROM mvt_geom; ( String ) ) vector
时间: 2024-02-20 21:56:33 浏览: 61
这似乎是一个 SQL 查询语句,但是它存在一些语法错误。其中 SELECT 语句被放在了 vector_tile 函数的参数中,这是不正确的。正确的查询语句应该是:
```
SELECT vector FROM vector_tile (
'PUBLIC',
'division_info_tbl_tmp',
8,
213,
103,
'PUBLIC',
'division_info_tbl',
8,
213,
103,
'WITH mvt_geom AS (
SELECT ST_AsMVTGeom(geom_3857, $1) AS geom, division_code
FROM PUBLIC.division_info_tbl_tmp
WHERE ST_Intersects(geom_3857, $2) AND division_level = ''1''
)
SELECT ST_AsMVT(mvt_geom.*, $3) AS tile
FROM mvt_geom'
);
```
这个查询语句首先指定了 vector_tile 函数的参数,然后使用 WITH 子句定义了一个名为 mvt_geom 的临时表,该表包含满足条件的矢量数据。最后,使用 ST_AsMVT 函数将数据转换为 MVT 格式,并将结果命名为 tile。
阅读全文