Php postgresql数据库函数不工作

Php postgresql数据库函数不工作,php,function,postgresql,postgis,Php,Function,Postgresql,Postgis,我尝试使用以下查询从mover_location表中获取最近的人: 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, doub

我尝试使用以下查询从mover_location表中获取最近的人:

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\u location表结构如下,这里最后看到的\u location\u geog是地理类型的

更新:-


将公共架构添加到搜索路径:


将搜索路径设置为您的公共模式

您使用的是什么版本的Postgis?这是相关的,因为ST_DWithin函数有多种形式,它们在不同的版本中引入,并非所有的都支持地理数据类型,其中一种在内部使用ST_展开。您是如何安装PostGIS的?我安装了Enterprise db full packeage,包括pgadminIII、PostGIS和stackbuilder,我不知道postgis的确切版本,但它是作为postgresql 9.3版安装的。它是postgis Shapefile导入/导出管理器2.1.3。好的,问题在前面已经解决,没有安装postgis扩展
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