create table pt_tmp(
id int,
pt geometry);
insert into pt_tmp values
(1,'point(1 1)'),(2,'point(2 1)'),(3,'point(2 7)');
计算欧式距离:
select p1.id as id1,p2.id as id2,st_distance(p1.pt,p2.pt)
from pt_tmp p1,pt_tmp p2
where p1.id<p2.id;
计算曼哈顿距离:
select p1.id as id1,p2.id as id2,abs(st_x(p1.pt)-st_x(p2.pt))+abs(st_y(p1.pt)-st_y(p2.pt)) as manhatton
from pt_tmp p1,pt_tmp p2
where p1.id<p2.id;