【发布时间】:2021-12-29 05:09:41
【问题描述】:
我有以下发布的查询。我想使用嵌套的SELECT 语句而不是CTE。我想让外部 SELECT 声明说明表 grid_cell_data 中包含的列
我不想使用j.* 我想改用列名
查询:
WITH j AS (
SELECT
ST_AsMVTGeom(
st_geomfromtext(geometryofcellrepresentativetobuffer),
ST_MakeBox2D(ST_Point(0, 0), ST_Point(4096,4096)))
FROM grid_cell_data where id = 3
)
SELECT ST_AsMVT(j.*) FROM j
grid_cell_data 表
CREATE TABLE IF NOT EXISTS grid_cell_data (
id SERIAL PRIMARY KEY,
isTreatment boolean,
isBuffer boolean,
geometryOfCellRepresentativeToTreatment geometry,
geometryOfCellRepresentativeToBuffer geometry
)
【问题讨论】:
-
问题是什么?为什么不能将 CTE 移动到 subselect ?只需将
j AS (....)从 CTE 复制到 FROM 部分,例如(...) as j代替j。似乎直截了当。
标签: sql postgresql postgis common-table-expression