【SQL基础】T-SQL函数类型——字符串函数
字符串函数用于处理列中的数据值,通常属于字符型的数据类型。
1、ASCLL(character),将具体字符转换为相应的整数(ASCII)代码,结果为正数。
例:select ASCII('A'),结果为65
2、CHAR(int),将ASCII代码转换为相应的字符,结果为CHAR(1).
例:select CHAR(65),结果为A
3、CHARINDEX(str1,str2),返回部分字符串str1在字符串str2中首次出现的起始位置。如果str1没有在str2中出现,那么返回值为0。
例:select CHARINDEX('world','hello world!'); 结果为7
select CHARINDEX('z','hello world!'); 结果为0
4、DIFFERENCE(str1,str2),返回值为0-4(发音越相似越大,4为相同发音)之间的整数,这就是str1和str2这两个字符串SOUNDEX之间的区别。SOUNDEX返回的数字指定的是字符串的语音。这种方法能够判断有相同发音的字符串。
例:select DIFFERENCE('spelling','telling'); 结果为2
select DIFFERENCE('hello','hello');结果为4
5、LEFT(str,length),截取str字符串length长度的字符串,当length大于str字符串的长度时,返回str。
例:selectLEFT('hello',3); 结果为'hel’
select LEFT('hello',10);结果为'hello’
6、LEN(str),放回指定的字符串表达式的字符个数,包括后面的空格。
例:select LEN('hello world! '); 结果为12
7、LOWER(str),将字符串str中所有的大写字母转换成小写字母。
例:select LOWER('Hello'); 结果为为'hello’
8、LTRIM(str),去掉字符串str开头的空格。
例:select LTRIM(' Hello World '); 结果为’Hello World ’
9、NCHAR(i),返回由统一码标准定义的、有指定整数代码的统一码字符。
例:select NCHAR(65); 结果为’A’
10、QUOTENAME(char_string),返回有分隔符的统一码字符串,使输入字符串编程有效分隔符。
例:select QUOTENAME('-'); 结果为‘[-]’
11、PATINDEX(%p%,expr),返回指定表达式expr中模式p第一次出现的起始位置,如果没有找到匹配模式的,就返回0。
例:select PATINDEX('%e%','hello'); 结果为2
12、REPLACE(str1,str2,str3),将所有str1中出现的str2替换为str3。
例:select REPLACE('hello','l','a'); 结果为‘heaao’
13、REPLICATE(str,times),将字符串str重复times次。
例:select REPLICATE('a',5)。结果为‘aaaaa’
14、REVERSE(str),将字符串str显示为倒序。
例:select REVERSE('hello'),结果为‘olleh’
15、RIGHT(str,length),在字符串str中截取最后length长度的字符。
例:select RIGHT('hello world',5),结果为‘world’
16、RTRIM(str),取消字符串str最后的空格。
例:select RTRIM(' Hello World '),结果为‘Hello World’
17、SOUNDEX(word),返回四个字符的SOUNDEX代码判断字符中的相似性。
例:select SOUNDEX('spelling'); 结果为‘S315’
18、SPACE(length),返回一个字符串,length为其指定的空间长度。
例:select SPACE(3); 结果为‘ ’
19、STR(f,[len [,d]],将指定的float表达式f转换为字符串。len是指定字符串的长度,包括小数点、正负号、数字和空格(默认值为10),d为小数点右边的被返回的数字。在转换过程中会使用四舍五入法。
例:select STR(123.45678,5,2); 结果为123,5
20、STUFF(str1,a,lenth,str2),用字符串str2中位于a处的部分字符串代替str1中的部分字符串,代替str1中length字符。
例:select STUFF('Hello World',6,1,' wonderful '),结果为‘Hello wonderful World’
21、SUBSTRING(str,index,length)。在字符串str中的index处开始截取length长度的字符串。
例:select SUBSTRING('Hello World',7,6),结果为‘World’
22、UNICODE,放回由同一定义的整数值,该值为数值表达式的第一个字符。
例:select UNICODE('Hello World'),结果为72,即‘H’的ASCII码
23、UPPER(str),将字符串str中的所有字母转换为大写字母。
例:select UPPER('Hello'),结果为‘HELLO’