SQL Server 字符串函数

字符转换

函数名

解释

备注

ASCII (character)

得到字符串中最左侧的字符的 ASCII 码值

如果是纯数字字符串,可不用’’括起来

CHAR (integer)

将 int ASCII 代码转换为字符

      介于 0 和 255 之间的整数。如果该整数表达式不在此范围内,将返回 NULL 值

       制表符:char(9),换行符:char(10),回车符:char(13)

UNICODE('string')
返回string的第一个字符的整数值  
NCHAR (integer)
返回具有指定的整数代码的 Unicode 字符  
LOWER(character)
UPPER(character)

转换成小写

转换成大写

 

STR(float[,length[,decimal]])

数字转换成字符

      length 指定返回的字符串的长度,decimal 指定返回的小数位数。如果没有指定长度,缺省的length 值为10, decimal 缺省值为0。

      当length 或者decimal 为负值时,返回NULL;当数字的长度超过要取的长度length是,返回length个‘*’;先服从length ,再取decimal ;当返回的字符串位数小于length ,左边补足空格。

 
提取子串
 

函数名

解释

备注

SUBSTRING ( expression ,start , length )

返回字符串中的一部分

如果是纯数字字符串,可不用’’括起来

LEFT ( character, integer)

返回字符串中从左边开始指定个数的字符

    

RIGHT ( character, integer)

返回字符串中从右边开始指定个数的字符

 

 
查询子串函

函数名

解释

备注

CHARINDEX(string1,string2[,start_location])

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

如果没有则返回0

start_location只是查找的起始位置,但返回的结果依然从字符串2的最开始计算

不支持通配符

PATINDEX ( '%pattern%' , expression )

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

 支持通配符   

 
字符串操作

函数名

解释

备注

QUOTENAME(string'[,'quote_character'])

返回带有分隔符的 Unicode 字符串

'quote_character'

用作分隔符的单字符字符串。可以是单引号 (')、左方括号[或右方括号 ] 或英文双引号 (")。默认为方括号

REPLICATE (character,integer)

以指定的次数重复字符表达式

REPLACE('string1','string2','string3')
用string3替换string1中出现的所有string2的匹配项 任意一个参数为null则返回null
SPACE (integer)

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

int参数为负则返回null
STUFF (string1, start , length ,string2)
删除string1中指定长度的字符,并在指定的起点处插入string2  
REVERSE ( character_expression )
返回字符表达式的逆向表达式  
 
去空格
LTRIM 或 RTRIM( character_expression ) 
 
字符串比较
DIFFERENCE (string1,string2) 返回一个整数值,指示两个字符表达式的 SOUNDEX 值之间的差异.
                             返回的整数是 SOUNDEX 值中相同字符的个数。返回的值从 0 到 4 不等:0 表示几乎不同或完全不同,
                             4 表示几乎相同或完全相同。 
SOUNDEX (string)返回一个由四个字符组成的代码 (SOUNDEX),用于评估两个字符串的相似性。
posted on 2010-04-12 15:59  天空一角  阅读(497)  评论(0编辑  收藏  举报