- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MapInfo与ArcGIS GIS标准 1、ISO/TC 211 由ESRI实现。 ① 打开希望查询的表(倘若尚未打开的话)。 ② 选择“查询”→“SQL选择”。 ③ 打开一个地图窗口或一个浏览窗口(若用户想看到查询结果)。 ④ MapInfo自动选中结果表中所有行。 ⑤ 若希望对查询表做一个永久拷贝,选择“文件”→“另存为”。 SQL选择 “条件”字段 1. 按行序连接表 若两个表没有公共列,还可以按照记录的顺序进行表连接。若知道一个表的第一条记录对应于另一个表的第一条记录,或更一般地说,一个表的第N条记录对应于另一个表的第N条记录,就可以通过引用一个特殊的名为RowID的列将两个表连接。 RowID列含有代表着表中每个记录的行号的整数。因此,任何表的第一条记录的RowID值为1,第二条记录的RowID值为2,依此类推。 要连接两个表使得MapInfo匹配两个表的第N条记录,指定一个如下形式的“条件”表达式。 条件:TABLE_1.RowID= TABLE_2.RowID 2. 按地理关系连接表 若两个表有图形对象,MapInfo能根据那些对象之间的空间关系来连接表 。 对象包蕴关系 表1 Counties表 表2 Orders表 方法: 选择列:* 从表:Counties, Orders 条件: Counties.CountyName = Orders.County CountyName Pop_1980 Pop_1990 Foster 23,789 27,135 Williamette 35,456 34,846 Mason 147,101 151,201 Order # Customer County 478001 Francis Foster 478002 James Foster 478003 Wickwire Mason ? 连接两个或多个表 MapInfo能利用该公共字段将两表连接。 MapInfo允许SQL选择中有子选择。子选择是被放在“SQL选择”对话框中的“条件”域内的选择语句。 选择states中超过4,000,000人的所有城市。 选择列* 从表 cities 条件 obj within any(select obj from states where Pop_1990 4000000) 执行子选择 过滤条件是常用于比较列值与其它值的逻辑表达式。例如,下面的过滤条件使用大于运算符()来检查Order_Amount列的值是否大于100。 “条件”:Order_Amount 100 如果查询包括上述“条件”子句,MapInfo只选择Order_Amount值大于100的行。 如果表达式被词and或or隔开,“条件”子域可包含两个或多个逻辑表达式。如果表达式被词and连接,MapInfo只选择满足全部两个条件的行。如果表达式被词or连接,MapInfo选择满足任一条件的所有行。 设置过滤规则 使用“SQL选择”对话框的“条件”字段 “条件”域有好几个作用。某些情况下,用户可能要使用一个条件表达式来过滤表,以便只看到那些满足一定准则的行。在其它情况下,可使用条件域来指定关系连接,从而查询能包括二个或多个表中的列。 注意:不能在“条件”域中使用聚合函数。 “按列排序”字段 1. 选择升序或降序排序 缺省情形下MapInfo按升序对表进行排序。要将字段按降序排以使大数字排在小数字前,可以在“按列排序”域中将desc放在列名字前。 查询World表时,以下的Order By排序准则。按列排序:Population desc将该表按Population字段进行降序排序。 选择列: * 从表: City_1K 按列排序 State, Population desc 2. 使用“按列排序”字段排序结果表 在“SQL选择”对话框中使用“按列排序”域,可将结果表的记录排序。排序影响在浏览窗口中记录从上而下出现的顺序。 按照State列对City_1K表排序。结果表按州名排序;但是,在California组内各行中,城市并未排序,San Francisco出现在Anaheim之上。要改正这一问题,可以在“按列排序”域中输入两个列名: 选择列: * 从表: City_1K 按列排序: State, City “按列分组”字段 1. 按列分组示例 设
文档评论(0)