我试图从我的postgis数据库中选择位于特定边界框内的位置。我想这个查询来实现:获取边界框内的点
//latlong - latitude, longitude of a place
SELECT * FROM places WHERE St_Contains(St_GeomFromText('Polygon((:top_left_long :top_left_lat, :bottom_right_long :bottom_right_lat))'), latlong);
首先的 - 我得到以下错误:
Warning: PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number: :top_left_lat
是什么意思?第二个问题 - 我是否正确地输入这些参数?我的意思是 - 第一个经度,然后是纬度?
让我感到困惑的是压痕。我在想为什么'ST_SetSRID'把'the_geom'作为第二个参数!? – 2013-09-24 19:16:24
根据[doc](http://postgis.net/docs/ST_MakeBox2D.html),'ST_MakeBox2D(geometry pointLowLeft,geometry pointUpRight);'Low-left,right-right。 – 2013-09-24 19:30:42