0
我试图使用查询如下摆脱mover_location表最近的人:的PostgreSQL数据库的功能不工作
select * from mover_location where
public.st_dwithin(public.st_geogfromtext('SRID=4326;POINT(11.2565999 75.7711587)'),
last_seen_location_geog, 1060)
这是不工作,并给我的错误就像如下:
ERROR: function _st_expand(public.geography, double precision) does not exist
我没有调用st_expand函数,我该如何解决这个问题,或者是否有任何其他
解决方法?谢谢 。
我mover_location表结构如下,这里last_seen_location_geog是地理类型的
更新: -
HINT: No function matches the given name and argument types. You might need to add explicit type casts.
QUERY: SELECT $1 && _ST_Expand($2,$3) AND $2 && _ST_Expand($1,$3) AND _ST_DWithin($1, $2, $3, true)
CONTEXT: SQL function "st_dwithin" during inlining
您使用的是什么版本的Postgis?这是相关的,因为ST_DWithin函数有各种形式,它们是以不同的版本引入的,并不是所有的形式都支持地理数据类型,其中一种形式内部使用ST_Expand。 – 2014-10-31 14:22:42
你是如何安装PostGIS的? – 2014-11-01 08:43:22
我安装了包含pgadminIII,postgis和stackbuilder的企业数据库完整软件包,我不知道postgis的确切版本,但它安装为postgresql版本9.3 – Crazyrubixfan 2014-11-01 16:08:48