第8页
第4排
羽毛球领袖,空间继电器和空间滤波器变压器是在FME工作台上对数据执行空间查询的重要工具。它们允许您快速地选择查询参数,而无需为特定于数据库的SQL语法操心。
本文描述如何使用FeatureReader执行空间和/或属性查询。在工作台中,您需要将您希望在空间查询中使用的特性连接到FeatureReader Transformer的启动器端口。如果您正在执行空间查询,重要的是,查询功能的几何图形与使用FeatureReader读取的几何图形在同一坐标系中。CSMAPrejector或Rejector变压器可用于此目的。
使用FeatureReader-FME 2016进行空间查询
下载spacequery-featurereader.fmt是完整的工作区。如果您想自己创建工作区,请下载vancouverneighborhods.kml,然后按照下面的步骤创建它。
完成工作区
1.检查源数据
添加一个Google KML阅读器,并将数据集设置为vancouverneighborhods.kml。在数据检查器中,请注意不同的邻域多边形,一个邻居将用于在FeatureReader中创建空间查询。
数据检查器中的vancouverneighborhods.kml
2.第二步。再投射
源kml数据必须与数据库数据在同一坐标系中。KML始终处于LL84坐标系中。添加csmapreprojector,将源坐标系保留为
三。提取边界框
测试人员提取空间查询中要使用的感兴趣区域。在这个例子中,其中一个社区,美景,使用。您可以构建一个参数,它是一个“hoods”列表。
第四章。添加FeatureReader
对于格式,请输入postgis并将dataset设置为嵌入连接参数。在参数下…请输入:
主持人:postgis.train.亚搏在线safe.com网站
端口:5432
数据库:FMEData
用户名:fmedata
密码:fmedata
方案:FMEData2015
将表列表的架构设置为 FMEData2015年
在要读取的功能类型中,请选择邮政地址.
设置FeatureReader的查询约束参数。要执行空间查询,请使用空间过滤器参数选择空间谓词。在这个例子中,空间过滤器设置为“包含”,以便仅返回位于“美景”邻域多边形内的特征。
FeatureReader参数空间过滤器设置为包含空间谓词
可以使用WHERE子句参数使用属性查询约束数据。请注意,此WHERE子句将应用于您选择要读取的所有表。尝试添加一个WHERE子句并比较差异:
“状态”不像“退休”
5.检查结果
当查询结果连同边界框一起发送给数据检查器时,我们可以看到,FeatureReader只返回边界区域(Fairview邻居)包含的点特征。
Fairview社区内的PostalAddress点
让数据库做这项工作是一句很好的格言,在可能的时候可以遵循。让数据库执行空间查询,只返回查询结果,通常会比读取整个表和在FME中进行过滤提供更好的性能。
另一个演示如何使用执行本机空间查询的SQLExecutor.
?2019安全亚搏在线软件公司|法律