从select语句中调用返回值

时间:2012-06-14 22:16:12

标签: postgresql insert postgis

我需要在postgresql表“polygontable”中插入一个多边形,然后返回其(the_geom)值以进一步查询。我想抓住“polygontable”中最近插入的实例。如何在SELECT语句中调用返回的“polygongeom”?

INSERT INTO polygontable (the_geom) 
VALUES (ST_SetSRID((ST_MakeValid(ST_GeomFromGeoJSON('"+JSON.stringify(payload)+"'))),4326)) returning the_geom as polygon_geom;  

SELECT st_intersects(polygon_geom, other_table.the_geom) 
from polygon_geom, other_table;

1 个答案:

答案 0 :(得分:2)

如果您使用的是9.1,则可以执行以下操作:

with inserted as 
(
  insert into ... 
  returning the_geom as new_geom
)
SELECT st_intersects(inserted.new_geom, other_table.the_geom) 
from inserted, other_table;