表格中有point
列。我需要添加另一个point
。新点不能比现有点的距离更近。距离由<@>
扩展名的earthdistance
运算符给出。
如果没有比1更接近的现有点,则该查询返回候选点,否则返回任意点。
select
case when not exists (
select 1
from (values ('0.01, 0'::point), ('-0.01, 0'), ('0, 0.01')) s(location)
where location <@> point (0,0) < 1
)
then point(0,0)
else point(1,1)
end
;
我需要一个查询来将最近的可能不存在的点(“空闲时段”)返回给候选点。在这个例子中,它将是≅(0,-0.0144733)
创建地球距离扩展:
create extension cube;
create extension earthdistance;