我有一些函数,我需要传递一个点数据类型。
somefunc("United States",Point(85.327892 27.703744))
但我得到的错误。
ERROR: syntax error at or near "27.703744"
SQL state: 42601
Character: 1192
答案 0 :(得分:2)
也许尝试在函数参数之间添加一个逗号?
somefunc("United States",Point(85.327892, 27.703744))
答案 1 :(得分:2)
我感觉到PostGIS和PostgreSQL的geometric data types之间存在一些混淆。如果您使用的是PostGIS,则需要ST_MakePoint
function,这非常适合参数:
SELECT ST_SetSRID(ST_MakePoint($lon, $lat), 4326)) AS geom;