SQL Server数据转换【包括Geometry类型】的技巧总结
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中选择忽略反复的值。这样导入数据的时候会自己主动忽略掉反复的值。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvamN4NTA4Mzc2MQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast">
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
SQL Server数据转换【包括Geometry类型】的技巧总结的更多相关文章
- delphi 转换sql server 中的 bit类型
FieldByName('e').AsBoolean = false 其中e为 sql server 中的bit类型.
- 使用 SQL Server 的 uniqueidentifier 字段类型
原文:使用 SQL Server 的 uniqueidentifier 字段类型 SQL Server 自 2008 版起引入了 uniqueidentifier 字段,它存储的是一个 UUID, 或 ...
- 【转】sql server数据库操作大全——常用语句/技巧集锦/经典语句
本文为累计整理,有点乱,凑合着看吧! ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ ☆ ☆ ☆ sql 宝 典 ☆ ☆ ☆ 2012年-8月 修订版 ☆ ...
- SQL Server 发布订阅 发布类型详解
MicrosoftSQL Server 提供了三种复制类型. 每种复制类型都适合于不同应用程序的要求. 根据应用程序需要,可以在拓扑中使用一种或多种复制类型: 快照复制 事务复制 合并复制 为了帮助您 ...
- SQL Server截取字符串和处理中文技巧
一 环境介绍 SQL Server PRINT @@VERSION MicrosoftSQLServer2012-11.0.2100.60(X64) Feb10201219:39:15 Copyri ...
- SQL Server 日期和时间类型
在Microsoft SQL Server的类型系统中,使用 date 表示日期类型,使用time表示时间类型,使用DateTime和DateTime2表示日期和时间的组合,DateTime2是Dat ...
- SQL Server的小数数值类型(float 和 decimal)用法
在SQL Server中,小数数值实际上只有两种数据类型:float 和 decimal.double precision 整体是数据类型,等价于 float(53),real等价于float(24) ...
- SQL SERVER 导出到Oracle 问题与技巧
工具: 使用SQL SERVER自带的导入, 导出工具 技巧: 一. 使用Oracle Provider for OLE DB(强制推荐) 1. 速度快 2. 要安装Oracle驱动(Oracle ...
- 浅析SQL Server 中的SOS_SCHEDULER_YIELD类型的等待
本文出处:http://www.cnblogs.com/wy123/p/6856802.html 进程的状态转换 在说明SOS_SCHEDULER_YIELD等待之前,先简要介绍一下进程的状态(迷迷糊 ...
- SQL Server 2008中增强的"汇总"技巧
本文转载:http://www.cnblogs.com/downmoon/archive/2012/04/06/2433988.html SQL Server 2008中的Pivot和UnPivot: ...
随机推荐
- Why Study JavaScript?
JavaScript is one of the 3 languages all web developers must learn: 1. HTML to define the content of ...
- 2 kNN-K-Nearest Neighbors algorithm k邻近算法(二)
2.3 示例:手写识别系统 2.3 .1 准备数据:将图像转换为测试向量 训练样本:trainingDigits 2000个例子,每个数字大约200个样本 测试数据:testDigits 大约900个 ...
- MySQL中用decimal的原因
原因:float保存的值有可能是这个值的近似值,而不是这个值的真实值.如 0.1在二进制中是没有办法保存真实值的. 下面是例子: 第一步:建表: create table t2(x float,y d ...
- 适配器模式—STL中的适配器模式分析
适配器模式通常用于将一个类的接口转换为客户需要的另外一个接口,通过使用Adapter模式能够使得原本接口不兼容而不能一起工作的类可以一起工作. 这里将通过分析c++的标准模板库(STL)中的适配器来学 ...
- CF 293 E Close Vertices (树的分治+树状数组)
转载请注明出处,谢谢http://blog.csdn.net/ACM_cxlove?viewmode=contents by---cxlove 题目:给出一棵树,问有多少条路径权值和不大于w,长 ...
- 使用Swift的代理,闭包来封装一个公用协议减少垃圾代码
iOS开发中,如果不进行适当的封装,使用协议或者继承类来进行开发,你就会遇到传说中的ViewController(以后简称VC) Hell的问题…… 比如说,我们先声网App中为了调用接口,做简单的判 ...
- windows下安装tern for vim
操作系统:windows8.1 64位 vim:gvim7.4 1.下载tern for vim,去官网直接下载,连接好像都是到github上(https://github.com/marijnh ...
- C++中#include的工作原理
大多数人可能对“#include”比较熟悉,因为我们写C/C++程序的时候都会写的字符串之一,但是它是具体怎么工作的?或者它的原理是什么呢? 可能不太熟悉,也有可能没有去关心过.我们只关心程序能否正确 ...
- 桦仔 笔记7-徐 SQLSERVER日志记录机制
1 --SQLSERVER日志记录机制 2 --日志记录事务发生的时间,但是不保证记录下发起这个事务的用户名,更不记录发起者的程序名称!!! 3 USE AdventureWorks 4 CREATE ...
- 列求key出现的频率
1 cat mc.log | grep LOGIN_GET | awk '{print $9}' | sort | uniq -c