从数据库查询地图也有两种方式:
(1)采用选择记录的方式。即在数据的浏览表中用鼠标点中记录前面的选择标记,则地图中相应地理位置的空间对象表现为高亮度。如果查询要选择多个记录,则需按住Shift键,再逐个点中要选的记录,则地图上被选中的对象将全部显示为高亮度。
(2)采用SQL选择查询方式。这是最灵活、最常用的查询方式。在本例中包含东南沟林班和小班两张表。林班表存放着林班数据,小班表存放小班数据。两表通过“林班”字段发生联系,系统通过该字段分辨林班地图对象与小班地图对象的地理关系。下面是用SQL查询这两表的例子。
例1:若要查询东南沟小班表中面积小于100亩,且树种为柞树或油松的小班。
则在“QL选择”对话框中作如下填写(见图8-3):
选择列: 林班,小班,面积
从表: 东南沟小班
条件: 面积<100 And树种=“柞树”Or树种=“油松”
结果如图8-8所示。
例2:若要按树种的总株数、总面积、总蓄积、平均年龄等分组东南沟小班表。则在“QL选择”对话框中作如下填写:
选择列: 树种,Sum(株数),Sum(面积),Sum(蓄积),Age(年龄)
从表: 东南沟小班
按列分组: 树种
结果如图8-9所示。
例3:若查询所有和3林班的32小班相邻的小班,在“SQL选择”对话框中作如下填写:
选择列:*
从表:东南沟小班
条件:ob ject Inte rsects(sel ect obj ect from东南沟小班where林班=“3” and 小班=“32”)
结果如图8-10所示,地图中显示出3林班中32小班及其相邻小班。