SQL Server数据转换【包含Geometry类型】的技巧总结

原创 2014年06月02日 23:10:46

1. 字段的组合:

update new_master_location
set tmp_street_unique=street+'_'+city+'_'+state+'_'+zip+'_'+convert(varchar(20),municipality)
这里如果碰到整形的字段需要转化为字符型【int --> String】。

2. 去掉前后的空格:

update mapping_parcels
set city=ltrim(rtrim(city))

SQL没有Trim的方法,只能通过这样的方式

3. 字符的替换【Replace方法】:

update mapping_parcels
set sale_date=replace(sale_date,'0000-00-00','')

4. 按照字符分割字段:

创建一个function:Mapping_Get_StrArrayStrOfIndex

update mapping_parcels
set state_zip=dbo.Mapping_Get_StrArrayStrOfIndex(city_state,' ',0)

去city_state字段按照空格分割后的第一部分的值

5. 查看某个字段的值是否正确,查看字符串的长度:

select zip from new_master_location where len(zip)>5

6. 某个字段的值唯一,去除重复:

在该表上创建一个索引(index)[表设计器打开的状况无法新建索引的],名字随便起,Add添加索引时,选中不想重复的那一列tmp_unique

重要的是在Options中选择忽略重复的值,这样导入数据的时候会自动忽略掉重复的值。

7. 更新Geometry字段无效的状况:

update new_master_location_geometry
set boundary=boundary.MakeValid ()
where boundary.STIsValid()=0

8. 取面图形的中心点:

update new_master_location_geometry
set center_lat=boundary.STCentroid().STY,
center_lon=boundary.STCentroid().STX

9. 更新中心点的位置:

update block
set center=geometry::STPointFromText('POINT (-73.91301 40.96522)', 0),
editon=GetUTCDate()
where blockid=1125

10. SubString的用法:

update mapping_sub_sector
set category=substring(label,1,1)

11. 判断点是否在多边形范围内:

select count(*) from location a
join mapping_geodata_boundary b on b.code='nj0415'
and b.boundary.STContains(geometry::STGeomFromText('POINT('+CONVERT(VARCHAR(50),longitude)+' '+CONVERT(VARCHAR(50),latitude)+')', 0))=1

12. 判断字符串中是否包含数字:

isnumber: 判断是否为数字【数字返回1,含有字符或者非数字返回0】。例子:select * from mapping_tax_warren where ISNUMERIC(prop_loc)=0

patindex: 返回指定表达式中某模式第一次出现的起始位置,如果在全部有效的文本和字符数据类型中没有找到该模式,则返回零。例子:PATINDEX('%[0-9]%', prop_loc)>0 

通过区域坐标获取sqlserver中的geometry 的区域范围内的坐标

稍后更新
  • q383965374
  • q383965374
  • 2014年11月27日 17:12
  • 3620

SQLServer——geometry与WKT

以下两个示例显示了如何添加和查询几何图形数据。第一个示例创建了带有标识列和 geometry 列 GeomCol1 的表。第三列将 geometry 列呈现为其开放地理空间联盟 (OGC) 熟知文本 ...
  • Shiyaru1314
  • Shiyaru1314
  • 2016年09月20日 16:35
  • 1496

SQL Server 支持空间数据(Geometry和Geography)的空间索引概述

SQL Server 2008之后支持了空间数据存储(geometry和Geography),那么我们在使用ArcGIS10.1桌面打开这些数据看到相关索引时会看到如下界面:下面就针对SQL Serv...
  • linghe301
  • linghe301
  • 2012年11月22日 08:56
  • 8540

通过区域坐标获取sqlserver中的geometry 的区域范围内的坐标

稍后更新
  • q383965374
  • q383965374
  • 2014年11月27日 17:12
  • 3620

通过SQL语句实现要素Geometry字段解析

在系统应用中,为了获取要素几何字段的点值集合,我们以前经常会想到用ArcEngine来进行开发解析,这里介绍一种更快捷的方式,通过SDE提供的数据库ST函数,利用SQL语句直接解析。 1)配置Ora...
  • esricd
  • esricd
  • 2013年07月04日 16:32
  • 2505

Geometry类型自定义类型转换器

WebGIS处理避免不了会用到wkt 字符串传入java后台转成Geometry的需求,但是我们以往的作法是后台直接接受一个字符串然后认为进行转换工作。其实Spring MVC 字符串自动映射成对象的...
  • jianyi7659
  • jianyi7659
  • 2016年09月10日 22:53
  • 1268

使用sql语句向SDO_Geometry插入要素

环境描述: 使用ArcGIS10.1直连数据库,以SDO_Geometry导入Featureclass,注册数据库,发布动态服务。 js(arcgis api for js + dojo + .n...
  • GISsunchangfu
  • GISsunchangfu
  • 2015年12月10日 11:05
  • 2617

ArcMap中使用ArcPy实现Geometry与WKT的相互转换

原文地址:http://blog.csdn.net/linghe301/article/details/29554257 在Web GIS迅猛发展的今天,使用浏览器来进行交互以其方便...
  • kone0611
  • kone0611
  • 2017年06月08日 12:48
  • 324

Oracle矢量数据类型ST_Geometry

一、简介     ArcSDE for Oracle 提供了 ST_Geometry 类型来存储几何数据。 ST_Geometry 是一种遵循 ISO 和 OGC 规范的,可以通过 SQL 直接读取...
  • yangwenxue_admin
  • yangwenxue_admin
  • 2016年01月29日 14:21
  • 4360

Mysql,Oracle,SqlServer三大数据库【关键字一览表】

为了避免在数据库表结构设计过程中使用系统保留关键字我们必须知道数据库存在哪些关键字,接下来会列出mysql、oracle、sqlserver三个数据库各自的保留关键字。SQLServer下表列出了 S...
  • WuLex
  • WuLex
  • 2017年03月08日 10:26
  • 559
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SQL Server数据转换【包含Geometry类型】的技巧总结
举报原因:
原因补充:

(最多只允许输入30个字)