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),用于评估两个字符串的相似性。