例说SQL SERVER 2008内置函数之字符串函数(二)

2014-11-24 10:28:37 · 作者: · 浏览: 1
icde','cd','123') AS Result;

>>查询执行结果

\

>>函数说明

功能:

将字符串str1中的所有字符串str2替换成指定的字符串str3。

入参及返回值:

第一个参数为需要搜索的字符串str1(实例中的'abcdefghicde');第二个参数为要查找的字符串str2(实例中的'cd');第三个参数为替换字符串str3(实例中的'123');返回值为varchar或者nvarchar。 如果其中任何一个入参为varchar,则返回值为varchar;若有一个入参为nvarchar,则返回值为nvarchar;如果任何一个参数为NULL,则返回值为NULL。

10 STUFF

>>SQL查询实例

SELECT STUFF('abcdef', 3, 3, '123') AS Result;

>>查询执行结果

\

>>函数说明

功能:

先将字符串str1从指定开始位置(start)删除指定长度(length)的字符,再从指定的开始位置(start)插入字符串str2。

入参及返回值:

第一个参数为字符串str1(实例中的'abcdef'),可以是常量、变量,也可以是字符列或者二进制数据列;第二个参数为指定的开始位置start(实例中的3),删除和插入操作都从这个位置开始;第三个参数为需要删除的字节数length;第四个参数为待插入的字符串str2,可以是常量,变量,也可以是字符列或者二进制数据列。函数返回修改后的字符串。

注意:

当start或length<0,则返回空字符串;当start>str1的长度,则返回空字符串;当length>str1的长度,则最多删除到str1的最后一个字符。

11 SUBSTRING

>>SQL查询实例

SELECT SUBSTRING('abcdef' ,2 , 3 )   AS Result;

>>查询执行结果

\

>>函数说明

功能:

SUBSTRING可以从指定的字符str,二进制,文本或图像表达式中获取其中的一部分。 (实例中以字符串为例)

入参及返回值:

第一个参数为指定的字符串str(实例中的'abcdef');第二个入参为返回字符的起始位置start(实例中的2);第三个参数为返回字符的长度length(实例中的3);这里的返回值为字符串。

注意:

当start<1时,起始位置则为字符串str的第一个字符,返回的字符数则是start+length-1的值与0这两者中的较大值。

SELECT SUBSTRING('abcdef' ,0 , 3 )   AS Result;

\

实例说明:此处start+length-1=0+3-1=2>0,则返回的字符数为2。

当start>字符串str的字符数,则返回一个长度为零的字符串。当start+length>字符串str的字符数,则返回起始位置为 start 的整个值表达式。

12 LEFT与RIGHT

>>SQL查询实例

SELECT LEFT('abcdefg',2)  AS Result;
SELECT RIGHT('abcdefg',2)  AS Result; 

>>查询执行结果

\

>>函数说明

功能:

两者分别返回指定字符串str中最左边或者最右边指定个数(length)的字符。

入参和返回值:

两者的第一个参数均为指定的字符串str(实例中的'abcdefg'),第二个参数均为指定的字符个数length(实例中的2),只是一个从左取一个从右取。返回值为varchar或者nvarchar类型的数据。

13 UPPER与LOWER

>>SQL查询实例

SELECT UPPER('abcdefg') AS Result;
SELECT LOWER('ABCDEFG') AS Result;

>>查询执行结果

\

>>函数说明

功能:

两者分别将指定字符串str的小写字符转换成大写字符或者将大写字符转换成小写字符。

入参及返回值:

两者的入参均为字符数据表达式(实例中的abcdefg'和'ABCDEFG'),可以是常量,变量或者列。返回值为varchar或者nvarchar类型的数据。

14 REVERSE

>>SQL查询实例

SELECT REVERSE('abcdefg') AS Result;

>>查询执行结果

\

>>函数说明

功能:

将输入字符串str进行逆序操作后再返回。

入参及返回值:

入参为字符数据表达式,可以是常量,变量或者列。返回值为varchar或者nvarchar类型的数据。

15 LEN

>>SQL查询实例

SELECT LEN('ABCDEFG') AS Result;

>>查询执行结果

\

>>函数说明

功能:

返回输入字符串str的字节数,不包含尾随的空格。

入参和返回值:

入参为字符数据表达式,可以是常量,变量或者列。返回值为int或者bigint(当输入字符串str为varchar(max)、nvarchar(max) 或 varbinary(max)时)类型的值。