st_clusterdbscan недоступен, но postgis устанавливается на postgresql

Я пытаюсь использовать описанную здесь функцию st_clusterdbscan postgis для экземпляра heroku / AWS postgresql. В документе сказано, что он доступен с 2.3 и требует гео. Postgis установлен в версии 2.4 с геос:

select postgis_version();
2.4 USE_GEOS=1 USE_PROJ=1 USE_STATS=1
(1 row)

но попытка использовать функцию (sql была взята из официальной документации) дает мне

SELECT ST_ClusterDBSCAN(location, eps := 50, minpoints := 2) over () AS cid                  
FROM users;
ERROR:  function st_clusterdbscan(geography, eps => integer, minpoints => integer) does not exist
LINE 1: SELECT ST_ClusterDBSCAN(location, eps := 50, minpoints := 2)...
           ^
HINT:  No function matches the given name and argument types. You 
might need to add explicit type casts.

Что я делаю неправильно? Другие функции postgis, такие как ST_DWITHIN, доступны и работают.

1 ответ

Это была проблема типа на самом деле. EPS должен быть приведён к плавающей точке, а мое "местоположение" должно быть приведено к "геометрии", тогда это сработало. Спасибо всем.

Другие вопросы по тегам