天天看点

SQL点滴33—SQL中的字符串操作

计算字符串长度

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

字符串转换为大、小写

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

截去字符串左、右侧空格                                              

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

返回由重复的空格组成的字符串

取子字符串

字符串替换

返回字符串值的逆向值

删除指定长度的字符,并在指定的起点处插入另一组字符

以指定的次数重复字符串值

返回字符串中指定表达式的开始位置

返回指定表达式中模式第一次出现的开始位置,返回指定表达式中某模式第一次出现的起始位置;

如果在全部有效的文本和字符数据类型中没有找到该模式,则返回零。

返回输入表达式的第一个字符的整数值

返回由数字数据转换来的字符数据

str(float_expression , length ,decimal )

float_expression 带小数点的近似数字 (float) 数据类型的表达式。

length               总长度。它包括小数点、符号、数字以及空格。默认值为 10。

decimal             小数点右边的小数位数。decimal 必须小于等于 16。如果 decimal 大于 16,则将结果截断为小数点右边的 16 位。

得到字符的ASCII码

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

得到一个与ASCII码数字对应的字符

返回返回具有指定的整数代码的 Unicode 字符

返回带有分隔符的 Unicode 字符串,分隔符的加入可使输入的字符串成为有效的 SQL Server 分隔标识符。

发音匹配度

有时候我们并不知道一个人姓名的拼写,但是我们知道他的发音,这时我们可以进行发音的匹配度测试。

soundex()用于计算一个字符串的发音特征性,这个特征值为一个四个字符的字符串,特征性的第一个字符总是初始字符串中的第一个字符,而后是一个三位数的数值。

select sname ,soundex(sname) from student

发音特征值的含义非常复杂,如果要根据两个发音特征值来分析两个字符串的发音相似度的话非常麻烦。

可以使用difference()来简化两个字符串的发音相似度比较,它可以计算两个字符串的发音特征值,并且比较它们,

然后返回一个0~4之间的值来反映两个字符串的发音相似度,这个值越大则表示两个字符串的发音相似度越大。

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