属性数据查询
n属性数据查询通过处理属性数据而获取数据子集。
n所选中的数据子集能同时在表格中进行查验、在统计图中显示以及链接到地图中高亮显示的要素。
n所选中的数据子集还可以被打印、保存,用于后期处理。
SQL(结构查询语言)
nSQL(结构查询语言)是一种专为操作关系数据库设计的数据处理语言。
nSQL 的基本语法包括:select <属性列表>,from <关系>,where <条件>。
nGIS 软件包已经在对话框中提供用于查询内部数据库的 select、from 和 where等关键字。因此,只要在对话框中输入where语句(查询表达式)就可进行查询。
图10.14
PIN (地块标识号) 字段将地块表与业主表关联,两表都可使用SQL。
查询表达式
n查询表达式由布尔表达式和连接符组成。
n简单的布尔表达式包括两个操作数和一个逻辑运算符。例如,Parcel.PIN = ‘P101’。
n布尔连接符包括 AND、OR、XOR和 NOT,用于连接两个或更多逻辑表达式,进行数据查询。
n实际上,布尔连接符 NOT、AND和 OR 是用于对概率数据集进行Complement(互补)、 Intersect(相交)和 Union(合并)运算的关键字。
图10.15
阴影部分代表数据集 A 的补集(上),数据集合 A 和B 的并集(中),以及 A 和B 的交集(下)。
表10.1 查询操作的数据集举例
Cost | Soiltype | Area | Cost | Soiltype | Area |
1 | Ns1 | 500 | 6 | Tn4 | 300 |
2 | Ns1 | 500 | 7 | Tn4 | 200 |
3 | Ns1 | 400 | 8 | N3 | 200 |
4 | Tn4 | 400 | 9 | N3 | 100 |
5 | Tn4 | 300 | 10 | N3 | 100 |
运算类型
属性数据查询是以完整数据集开始的。基本查询运算通过选择一个子集。给定一个选中的数据子集,可以对其进行三种运算:
1.向数据子集中加入更多记录;
2.从数据子集中移除记录;
3.选择一个更小子集。
图10.16
对选中的40 条记录的子集可以进行三种操作:向子集(+2)添加更多记录,从子集(-5)删除记录,或者选择一个更小的子集(20)。
关系数据库查询
n关系数据库查询是针对关系数据库进行工作的。在关系数据库进行的表格查询,不仅可以在表中选择一个数据子集,而且还从其它表格中选择与该子集相关的记录。
n在使用关系数据库之前,用户首先必须熟悉数据库的整体结构、关系表格联接的关键字以及每个表中列出的用于描述的字段数据词典。
图10.17
将SSURGO数据库中的三个 dBASE文件与土壤图属性表关联的关键字。