日度归档:2014年8月21日

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’

原文:http://blog.sina.com.cn/s/blog_531bb7630100wgfv.html