字符串函数用于对字符和二进制字符串进行各种操作,大多数字符串函数只能作用于char、nchar、varchar和nvarchar数据类型。字符串函数可以用在SELECT或者WHERE语句中。
1. ASCII()函数
ASCII(character_expression)函数作用于返回字符串表达式中最左侧字符的ASCII代码值。参数character_expression必须是一个char或varchar类型的字符串表达式。
示例:
2. CHAR()函数
CHAR(integer_expression)函数将整数类型的ASCII的值转换为对应的字符,integer_expression是一个介于0~255之间的整数。如果该整数表达式不在此范围内,将返回NULL。
示例:
3. LEFT()函数
LEFT(character_expression, integer_expression)函数返回字符串左边开始指定个数的字符串、字符或二进制数据表达式。character_expression是字符串表达式,可以是常量、变量或字段。integer_expression为正整数,指定character_expression将返回的字符数。
示例:
4. RIGHT()函数
与LEFT()函数相反,RIGHT(character_expression, integer_expression)返回字符串character_expression最右边integer_expression个字符。
示例:
SELECT RIGHT('LINQ to SQL', 3)
5. LTRIM()函数
LTRIM(character_expression)用于去除字符串左边多余的空格。
语法:
LTRIM ( character_expression )
6. RTRIM()函数
RTRIM(character_expression)用于去除字符串右边多余的空格。
语法:
RTRIM ( character_expression )
7. STR()函数
语法:
STR ( float_expression [ , length [ , decimal ] ] )
STR()函数用于将数值数据转换为字符数据。
◊ float_expression 是一个带小数的近似数字数据类型的表达式。
◊ length 表示总长度,包括小数点、符号、数字以及空格。默认值为10.
◊ decimal 指定小数点后的位数
示例:
若未指定小数,则只返回整数部分
指定返回的小数位数
当表达式超出指定长度时,字符串为指定长度返回 **。
8. REVERSE()函数
REVERSE()函数返回字符串值的逆序,语法:
REVERSE ( string_expression )
示例:
9. LEN()函数
返回指定字符串表达式的字符数,其中不包含尾随空格,但前空格会包含在内。LEN对相同的单字节和双字节符返回相同的值
语法:
LEN ( string_expression )
示例:
10. CHARINDEX()函数
在一个表达式中搜索另一个表达式并返回其起始位置(如果找到)。返回的起始位置从 1 开始,而不是从 0 开始。若未找到,则返回0。
语法:
CHARINDEX ( expressionToFind ,expressionToSearch [ , start_location ] )
示例:
从指定位置开始查找:
11. SUBSTRING()函数
返回 SQL Server 中的字符、二进制、文本或图像表达式的一部分。
语法:
SUBSTRING ( expression ,start , length )
◊ start指定返回字符的起始位置的整数或表达式。
◊ length是正整数或指向expression的字符数的表达式。
◊ length 不能是负数
示例:
12. LOWER()函数
将大写字符数据转换为小写字符数据后返回字符表达式。
语法:
LOWER ( character_expression )
示例:
SELECT LOWER('ABcdEFG')
13. UPPER()函数
将小写字符数据转换为大写字符数据后返回字符表达式。
语法:
UPPER ( character_expression )
14. REPLACE()函数
用另一个字符串值替换出现的所有指定字符串值。
语法:
REPLACE ( string_expression , string_pattern , string_replacement )
示例: