SQLSERVER字符串处理函数
sqlserver提供了一系列字符串处理函数:substring、left、right、len、charindex、patindex、replace、replicate、stuff、upper、lower、rtrim、ltrim等函数。
- substring函数用于从字符串中提取子串,从指定位置开始(start),具有特定长度(length)的子字符串。
substring(string,strat,length)
eg: select substring('abcde',1,3)返回子字符串'abc'
select substring('abcde',1,8)返回字符串'abcde'(如果length长度大于字符串长度,则返回原字符串)
- left和right函数返回输入字符串从左或右开始的n个字符
left(sting,n) / right(string,n)
eg: select left('abcde',3)返回字符串'abc'
select right('abcde',3)返回字符串'cde'
- len和datalength函数分别返回字符串中的字符数以及字符串中的字节数
len(string) / datalength(string)
eg: select len('and')返回字符数3
select datalength(N'abc')返回字节数6
select len(' abc ')返回5,无论有多少个连续空格,均计算一次
注:普通字符,字符串的字符数和字节数是一致的,这是因为一个字符只占一个字节的存储空间
Unicode字符,字符串的字符数和字节数是不一致的,一个字符占用两个字节的空间,故字符数是字节数的一半
- charindex函数返回字符串中某个子串首次出现的起始位置
charindex(substring,string[,start_pos]),可以选择性的指定搜索的起始位置,即对start_pos赋值,未对其赋值则从第一个字符开始搜索
eg: select charindex('m','abnmdemf',5)返回7
select charindex('m','abnmdemfcv',8)返回0
select charindex('m','abnmdemf',3)返回4
默认情况下,sqlserver对大小写是不敏感的,但是当设置了对大小写敏感COLLATE Latin1_General_CS_AS时(patindex函数同样适用):
eg: select charindex'test', 'this Test is Test' COLLATE Latin1_General_CS_AS)返回0
select charindex'test', 'this Test is Test' COLLATE Latin1_General_CI_AS)返回6
- patindex函数返回某个模式第一次出现的起始位置
patindex(pattern,string)
eg: select patindex('%[0-9]%','abcd123efgh')返回5,查询数字0-9中任一数字在字符串'abcd123efgh'首次出现的位置,%表示数字前可以匹配任意长度的字符,包括空字符
- replace函数将字符串中出现的所有某个子串替换为另一个字符串
replace(string,substring1,substring2)将substring1替换为substring2
eg: select replace( 'l-a 2-b', '-', ':')返回结果为'1:a 2:b'
- replicate函数指定的次数复制字符串
replicate(string,n)
eg: select replicate('abc',3)返回'abcabcabc'
- stuff函数先删除字符串中的一个子串,再插入一个新的子串作为替换
stuff(string,pos,delete_length,insertstring)
eg: select stuff('xyz',2,1,'abc')返回'xabcz'
- upper和lower函数将字符串转换为大写或小写
upper(string) / lower(string)
- rtrim和ltrim函数删除字符串中的尾随空格或前导空格
rtrim(string) / ltrim(string)
eg: select rtrim(ltrim(' abc '))
SQLSERVER字符串处理函数的更多相关文章
- sqlserver 字符串处理函数解释
1.ASCII()返回字符表达式最左端字符的ASCII 码值.在ASCII()函数中,纯数字的字符串可不用‘’括起来,但含其它字符的字符串必须用‘’括起来使用,否则会出错.2.CHAR()将ASCII ...
- SqlServer——字符串处理函数
1) ASCII Format:ASCII ( character_expression ) Function:返回表达式最左端字符的ASCII值. eg: select ASCII('abcdef' ...
- SQLserver字符串分割函数
一.按指定符号分割字符串,返回分割后的元素个数,方法很简单,就是看字符串中存在多少个分隔符号,然后再加一,就是要求的结果.CREATE function Get_StrArrayLength( @s ...
- [转]SQLserver字符串分割函数
一.按指定符号分割字符串,返回分割后的元素个数,方法很简单,就是看字符串中存在多少个分隔符号,然后再加一,就是要求的结果. CREATE function Get_StrArrayLength ( ) ...
- sqlserver字符串拆分函数
CREATE FUNCTION f_splitSTR(@s varchar(8000), --待分拆的字符串@split varchar(10) --数据分隔符)RETURNS @re TABLE(c ...
- SQLserver 字符串分割函数
CREATE function Get_StrArrayStrOfIndex ( @str varchar(), --要分割的字符串 @split varchar(), --分隔符号 @index i ...
- ylb:SQLServer常用系统函数-字符串函数、配置函数、系统统计函数
原文:ylb:SQLServer常用系统函数-字符串函数.配置函数.系统统计函数 ylbtech-SQL Server:SQL Server-SQLServer常用系统函数 -- ========== ...
- sqlserver学习笔记(六)—— sqlserver内置函数(字符串、日期)
sqlserver中有很多内置函数,这里总结了一些常用的 一.关于字符串的函数: 1.CHARINDEX 寻找一个指定字符串在另一个字符串中的起始位置 SELECT CHARINDEX('world‘ ...
- 【转载】Sqlserver使用SUBSTRING函数截取字符串
在SQL语句查询过程中,Sqlserver支持使用LEFT().RIGHT().SUBSTRING()等几个函数对字符串进行截取操作,SubString函数相对于其他两个函数来说更灵活,使用场景更多, ...
随机推荐
- Mvnw 简介
Mvnw 简介 8月 17, 2016 | Nix.Huang 背景 maven是一款非常流行的java项目构建软件,它集项目的依赖管理.测试用例运行.打包.构件管理于一身,是我们工作的好帮手,m ...
- 乘风破浪:LeetCode真题_004_Median of Two Sorted Arrays
乘风破浪:LeetCode真题_004_Median of Two Sorted Arrays 一.前言 说到算法,最难的就是一些需要通过分析得到一些递推公式或者有用的结论,进而用来解决问题的方法了. ...
- LAMP配置NFS页面共享,autofs实现挂载,DNS实现名称解析,纯手动操作
0.实验架构: 共6台服务器 分工如下: 服务器 职责 IP地址 Centos版本 描述 A DNS 172.18.7.70 7 B Apache 172.18.7.71 7 httpd+php-fp ...
- 初始python(三)
1. 循环 if, while, forbreak : 结束整个循环continue :跳出当前这次循环,但不结束整个循环else :结束整个循环后才执行,不能与break合用,但可以与continu ...
- Azure 负载内部均衡器概述
Azure 内部负载均衡器 (ILB) 仅将流量定向到云服务内的资源,或使用 VPN 来访问 Azure 基础结构. 在这一点上,ILB 与面向 Internet 的负载均衡器不同. Azure 基础 ...
- vue组件详解(一)——组件与复用
一.什么是组件 组件 (Component) 是 Vue.js 最强大的功能之一.组件可以扩展 HTML 元素,封装可重用的代码. 二.组件用法 组件需要注册后才可以使用,注册有全局注册和局部注册两种 ...
- PhoneGap 加速计 api 获取加速计 x 轴 y 轴 z 轴信息
一.PhoneGap 加速计 Accelerometer 对象介绍 1.主要方法 accelerometer.getCurrentAcceleration 获取当前设备在 x,y,z 轴上的加速度信息 ...
- cocos2d-x中关于打包成APK的问题
转载自:http://blog.csdn.net/u013315178/article/details/51254630 之前在网上看了很多的帖子大多数用ide 来打包 太麻烦了 而且一般没有人现场指 ...
- RSA加密算法和签名算法
RSA加密算法 RSA公钥加密体制包含如下3个算法:KeyGen(密钥生成算法),Encrypt(加密算法)以及Decrypt(解密算法). .密钥生成算法以安全常数作为输入,输出一个公钥PK,和一个 ...
- 算法学习记录-查找——平衡二叉树(AVL)
排序二叉树对于我们寻找无序序列中的元素的效率有了大大的提高.查找的最差情况是树的高度.这里就有问题了,将无序数列转化为 二叉排序树的时候,树的结构是非常依赖无序序列的顺序,这样会出现极端的情况. [如 ...