postgresql+postgis 测试数据以及函数

数据解释:
共三种数据,三张表,分别为点线面数据,其中:
pois4547为点数据,这里我假设其为兴趣点位表
roads4547为线数据,这里我假设其为道路表
buildings4547为面数据,这里我假设其为建筑物表
数据可从我上传的csdn资源下载:
点击跳转页面下载

1.例子:查询’宝安机场水渠污水口’点位附近400米的建筑物数据,(数据点位位置如下图所示黄点)

select *,ST_AsText(buildings4547.geom) from buildings4547 
join pois4547
on ST_DWithin(buildings4547.geom,pois4547.geom,400)
where pois4547.name='宝安机场水渠污水口'

结果:如下图所示可查询到三个建筑物面:
其中包括最大的 “机场基地”面,以及肉眼可看到的黄色点位附近的 “宝安机场水渠”面跟“宝安机场水渠工作室”面
在这里插入图片描述
在这里插入图片描述
2.例子,查询’宝安机场水渠污水口’点位附近400米的建筑物数据和道路数据,(数据点位位置如上图所示黄点)

测试1:
在这里插入图片描述

select buildings4547.name,raods4547.name,pois4547.name from buildings4547   
join pois4547
on ST_DWithin(buildings4547.geom,pois4547.geom,400) 
join raods4547
on ST_DWithin(raods4547.geom,pois4547.geom,400)
where pois4547.name='宝安机场水渠污水口'

测试2

在这里插入图片描述

select b.geom,c.geom,b.name,c.name from 
pois4547 as a,
raods4547 as b,
buildings4547 as c
where ST_DWithin(b.geom,a.geom,400)
and
ST_DWithin(c.geom,a.geom,400)
and
a.name='宝安机场水渠污水口'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值