计算字符串长度 len()用来计算字符串的长度

select sname ,len(sname) from student

字符串转换为大、小写 lower() 用来将一个字符串转换为小写,upper() 用来将一个字符串转换为大写

select lower('I AM A STUDENT !') select upper('i am a student !')

截去字符串左、右侧空格                                               ltrim() 用来将一个字符串左侧的空格去掉 ,rtrim()用来将一个字符串右侧的空格去掉

declare @str varchar() set @str='我的左侧有空格!' select @str as 初始字符, len(@str) as 初始长度,ltrim(@str) as 现有字符,len(ltrim(@str)) as 现有长度

返回由重复的空格组成的字符串 space(integer_expression)   integer_expression 指示空格个数的正整数。如果 integer_expression 为负,则返回空字符串。

select 'A'+ space()+'B'

取子字符串 substring(string,start_position,length) 可以从任意位置取任意长度的子字符串, left(string,length)  从左侧开始取子字符串 right(string,length)从右侧开始取子字符串

select  substring('HelloWorld!',,) select       left('HelloWorld!',) select      right('HelloWorld!',)

字符串替换 replace(string,要被替换的字符串,替换的字符串)

select  replace('HelloWorld!','o','e')              结果为:HelleWerld!

返回字符串值的逆向值 reverse(string_expression)

select reverse('abc')                              结果为:cba

删除指定长度的字符,并在指定的起点处插入另一组字符 stuff(character_expression , start , length ,character_expression) start 一个整数值,指定删除和插入的开始位置。 length 一个整数,指定要删除的字符数。

select stuff('abcdefg',,,'Hello ')                结果为:Hello g

以指定的次数重复字符串值 replicate(string_expression ,integer_expression)

select replicate('abc',4)  结果为:abcabcabcabc

返回字符串中指定表达式的开始位置 charindex(expression1 ,expression2  , start_location )或charindex(expression1 ,expression2 ) expression1在expression2 中的开始位置

select charindex('H','elloHWorld')                结果为:5

返回指定表达式中模式第一次出现的开始位置 patindex('%pattern%',expression) 返回指定表达式中某模式第一次出现的起始位置; 如果在全部有效的文本和字符数据类型中没有找到该模式,则返回零。

select patindex('%Hello%','WorldHello')             结果为:6

返回输入表达式的第一个字符的整数值 unicode( 'ncharacter_expression' )    ' ncharacter_expression ' 为 nchar 或 nvarchar 表达式。

select unicode('a')                                 结果为:97 select unicode('abc')                               结果为:97

返回由数字数据转换来的字符数据 str(float_expression , length ,decimal ) float_expression 带小数点的近似数字 (float) 数据类型的表达式。 length               总长度。它包括小数点、符号、数字以及空格。默认值为 10。 decimal             小数点右边的小数位数。decimal 必须小于等于 16。如果 decimal 大于 16,则将结果截断为小数点右边的 16 位。


select str(123.436,),   len(str(123.436,))   //当表达式超出指定长度时,字符串为指定长度返回 **  select str(123.436),     len(str(123.436)),        str(123.436,),   len(str(123.436,)),        str(123.436,,), len(str(123.436,,)) //由六个数字和一个小数点组成的表达式转换为有六个位置的字符串。                                                  数字的小数部分舍入为一个小数位。 select str(1234.436),    len(str(1234.436)),        str(1234.436,),  len(str(1234.436,)),        str(1234.436,,),len(str(1234.436,,))

结果为:

得到字符的ASCII码 ascii()用来得到一个字符的ASCII码,它有且只有一个参数,如果参数为字符串,那么取第一个字符的ASCII码

select  ascii('H') select  ascii('HelloWorld!')

得到一个与ASCII码数字对应的字符 Char(integer_expression)  integer_expression 介于 0 和 255 之间的整数。如果该整数表达式不在此范围内,将返回 NULL 值。

select  Char()

返回返回具有指定的整数代码的 Unicode 字符 nchar(integer_expression)  integer_expression 介于 0 与 65535 之间的正整数。如果指定了超出此范围的值,将返回 NULL。

select nchar()

返回带有分隔符的 Unicode 字符串,分隔符的加入可使输入的字符串成为有效的 SQL Server 分隔标识符。 quotename('character_string')  character_string 不得超过 128 个字符。超过 128 个字符的输入将返回 NULL。

select quotename('abc[aa]def')

结果为:[abc[]]def]  请注意,字符串 abc[]def 中的右方括号有两个,用于指示转义符。select QUOTENAME('abcdef','''') --分隔符是两个单引号 -- 'abcdef' select QUOTENAME('abcdef') --分隔符是] -- [abcdef] select QUOTENAME('abcdef','{}') --分隔符是} -- {abcdef}

发音匹配度 有时候我们并不知道一个人姓名的拼写,但是我们知道他的发音,这时我们可以进行发音的匹配度测试。 soundex()用于计算一个字符串的发音特征性,这个特征值为一个四个字符的字符串,特征性的第一个字符总是初始字符串中的第一个字符,而后是一个三位数的数值。

select sname ,soundex(sname) from student

结果为:

发音特征值的含义非常复杂,如果要根据两个发音特征值来分析两个字符串的发音相似度的话非常麻烦。 可以使用difference()来简化两个字符串的发音相似度比较,它可以计算两个字符串的发音特征值,并且比较它们, 然后返回一个0~4之间的值来反映两个字符串的发音相似度,这个值越大则表示两个字符串的发音相似度越大。

select sname,soundex(sname), difference(sname,'Herry') from stu

结果为:

sql字符串函数(转)的更多相关文章

  1. SQL 字符串函数

    http://www.w3cschool.cn/sql/sql-string-functions.html SQL 字符串函数 序号 Name Description 备注 1 ASCII() 返回最 ...

  2. SQL字符串函数

    LEN() :计算字符串长度(字符的个数.)datalength();//计算字符串所占用的字节数,不属于字符串函数.测试varchar变量与nvarchar变量存储字符串a的区别.见备注1.LOWE ...

  3. 常见的SQL字符串函数

    1.LEN:计算字符串的长度(字符的个数) select len('哈哈hello') 返回长度为7 2.datalength();计算字符串所占用的字节数,不属于字符串函数 select DATAL ...

  4. sql 字符串函数、数学函数

    -- 字符函数:-- 查询结果姓名小写 select lower(ename), sal, job from emp;-- 查询结果姓名大写 select upper(ename), sal, job ...

  5. PostgreSql字符串函数和操作符

    本节描述了用于检查和操作字符串数值的函数和操作符.在这个环境中的字符串包括所有 character, character varying, text 类型的值.除非另外说明,所有下面列出的函数都可以处 ...

  6. Delphi常用字符串函数

    Delphi常用字符串函数   一.字符转换函数1.ord(input[i])返回字符表达式 input 左端起第 I 字符的ASCII 码值.2.CHAR()将ASCII 码转换为字符.如果没有输入 ...

  7. Sql Server函数全解<一>字符串函数

    阅读目录 1.ASCII()函数 2.CHAR()函数 3.LEFT()函数 4.RIGHT()函数 5.LTRIM()函数 6.RTRIM()函数 7.STR()函数 8.字符串逆序的函数REVER ...

  8. Sql Server系列:字符串函数

    字符串函数用于对字符和二进制字符串进行各种操作,大多数字符串函数只能作用于char.nchar.varchar和nvarchar数据类型.字符串函数可以用在SELECT或者WHERE语句中. 1. A ...

  9. Sql Server函数全解(一)字符串函数

    字符串函数用于对字符和二进制字符进行各种操作 1.ASCII()函数  ASCII(character_expression)函数用于返回字符串表达式中最左侧的ASCII代码值.参数character ...

随机推荐

  1. Luence简单实现1

    初步认识Luence,简单按照官方文档做了个例子,大牛绕开,仅供小白路过参考.如有错误,欢迎指正批评. 建一个简单工程,并且加入这几个小奶瓶,如下图: 注:版本不同,可能对jdk的需求是不同的,这个需 ...

  2. git撤销删除

    问题描述:     使用git时本地文件删除了,提交至github,希望撤销修改,找回源文件 问题解决: (1)查看git log,查看日志信息 注:     使用 git log 可以查看提交的日志 ...

  3. JXL读取写入excel表格数据

    问题描述: 使用java的jxl包创建.写入excel表格数据 问题解决: (1)说明 (2)写入execel数据 注: 以上是写入数据需要调用的函数接口 注: 具体接口调用过程,如上所示 (3)读取 ...

  4. 【Vijos】【1164】曹冲养猪

    中国剩余定理 没啥重要的……模板题,中国剩余定理就是解出模线性方程组的一个可行解(好像也是唯一解?) 这是一种神奇的构造方法……明白了为什么这样构造是对的就行了=.=至于怎么想到这种构造方法的……去问 ...

  5. WCF 之 OperationContract

    这里主要说的是同名异常: [ServiceContract] public interface IUserInfo { [OperationContract] string ShowName(stri ...

  6. 关于struts2如何去掉默认的后缀(.action)

    struts2是可以配置默认的后缀名的,如http://localhost:8080/test.action,这个是默认的,但是也可以通过配置去修改这个.action为别的. 这里是通过一个常量配置改 ...

  7. Candy

    There are N children standing in a line. Each child is assigned a rating value. You are giving candi ...

  8. Struts 2知识回顾----拦截器(Intercept)总结

    什么是Struts 2拦截器? 从软件构架上来说,拦截器是实现了面向方面编程的组件.它将影响了多个业务对象的公共行为封装到一个个可重用的模块,减少了系统的重复代码,实现功能的高度内聚,确保了业务对象的 ...

  9. java基础知识回顾之java Thread类学习(四)--java多线程安全问题(锁)

    上一节售票系统中我们发现,打印出了错票,0,-1,出现了多线程安全问题.我们分析为什么会发生多线程安全问题? 看下面线程的主要代码: @Override public void run() { // ...

  10. ios学习笔记block回调的应用(一个简单的例子)

    一.什么是Blocks      Block是一个C级别的语法以及运行时的一个特性,和标准C中的函数(函数指针)类似,但是其运行需要编译器和运行时支持,从ios4.0开始就很好的支持Block. 二. ...