SQL SERVER 2008 函数大全 - 字符串函数
2011-08-02 18:52
609 查看
[code]/*
1,ASCII返回字符表达式中最左侧字符的ASCII代码值
仅返回首字母的ASCII码值
parameterchar或varchar
returnsinteger
*/
SELECTASCII('a')--97
SELECTASCII('A')--65
SELECTASCII('aA')--97
SELECTASCII('0')--48
SELECTASCII('01')--48
/*
2,CHAR将整数ASCII代码转换为字符
parameterTINYINT
returnschar(1)
*/
SELECTCHAR(97)--a
SELECTCHAR(65)--A
--SELECTCHAR('A')--在将varchar值'A'转换成数据类型int时失败。
/*
3,CHARINDEX返回表达式中指定字符的开始位置
parameter
搜索表达式varchar
要搜索的表达式varchar
开始位置bigint
returnsinteger|bigint
其中第三个参数仅影响查询开始位置,不会影响返回结果
例如,需要忽略前50个字符,从第50个字符往后开始查找,并返回位置即可使用该参数
默认从位置1处开始查询
*/
SELECTCHARINDEX('b','abcdefg',0)--2
SELECTCHARINDEX('b','abcdefg',1)--2
SELECTCHARINDEX('b','abcdefg',2)--2
SELECTCHARINDEX('b','abcdefg',3)--0
/*
4,DIFFERENCE以整数返回两个字符表达式的SOUNDEX值之差
parameter表达式varchar
parameter表达式varchar
SOUNDEX是一种语音算法,利用英文字的读音计算近似值,值由四个字符构成,第一个字符为英文字母,后三个为数字。在拼音文字中有时会有会念但不能拼出正确字的情形,可用Soundex做类似模糊匹配的效果。
http://zh.wikipedia.org/zh-cn/Soundex
*/
SELECTDIFFERENCE('bet','bit')--3
/*
5,LEFT返回字符表达式最左侧指定数目的字符
parameter表达式varchar|nvarchar
字符数integer
returnsvarchar|nvarchar
*/
SELECTLEFT('abcdefg',1)--a
SELECTLEFT('abcdefg',2)--ab
SELECTLEFT('abcdefg',3)--abc
SELECTLEFT('abcdefg',1000)--abcdefg
--SELECTLEFT('abcdefg',-2)--传递到left函数的长度参数无效。
SELECTLEFT('abcdefg',0)--''
/*
6,LEN返回给定字符串表达的字符数
parameter表达式varchar|nvarchar
returnsinteger|bigint
*/
SELECTLEN('abcdefg')--7
SELECTLEN(N'abcdefg')--7
SELECTLEN('')--0
SELECTLEN('中国人')--3
/*
7,LOWER返回将大写字符转换为小字符的字符表达式
parameter表达式varchar|nvarchar
returnsvarchar|nvarchar
*/
SELECTLOWER('ABCDEFG')--abcdefg
SELECTLOWER('中国人')--中国人
/*
8,LTRIM返回删除了前导空格之后字符表达式
parameter表达式varchar|nvarchar
returnsvarchar|nvarchar
*/
SELECTLTRIM('abcdefg')--abcdefg
/*
9,NCHAR返回具有给定的整数代码的UNICODE字符
parameterinteger
returnsnchar(1)
*/
SELECTNCHAR(65)--A
SELECTNCHAR(-65)--NULL
SELECTNCHAR(-66)--NULL
/*
10,PATINDEX返回指定表达式中模式第一次出现的开始位置
parameter搜索模式文字varchar|nvarchar
要搜索的表达式varchar|nvarchar
returnsinteger|bigint
*/
SELECTPATINDEX('%_cd%','abcdefg')--2
/*
11,QUOTENAME返回为成为有效的SQLSERVER分隔标识符而添加了分隔符的UNICODE字符串
parameter表达式nvarchar(128)
(可选)引号字符char(1)
returnsnvarchar(258)
*/
SELECTQUOTENAME('CREATETABLE')--[CREATETABLE]
SELECTQUOTENAME('a')--[a]
/*
12,REPLACE用第三个表达式替换第一个表达式中出现的第二个表达式
parameter要搜索的表达式varchar|nvarchar
搜索表达式varchar|nvarchar
替换表达式varchar|nvarchar
returnsvarchar|nvarchar
*/
SELECTREPLACE('abcdefg','cd','0')--ab0efg
SELECTREPLACE('abcdefg','cd','')--abefg
/*
13,REPLICATE按指定次数重复表达式
parameter表达式varchar|nvarchar
表达式bigint
returnsvarchar|nvarchar
*/
SELECTREPLICATE('a',4)--aaaa
SELECTREPLICATE('abc|',4)--abc|abc|abc|abc|
/*
14,REVERSE返回字符表达式的逆向表达式
parameter表达式varchar|nvarchar
returnsvarchar|nvarchar
*/
SELECTREVERSE('ABC')--CBA
SELECTREVERSE('ABa')--aBA
/*
15,RIGHT返回字符表达式右侧指定数目的字符
parameter表达式varchar|nvarchar
表达式bigint
returnsvarchar|nvarchar
!类似LEFT函数
*/
SELECTRIGHT('abcd',3)--bcd
/*
16,RTRIM返回截断了所有尾随空格之后的字符表达式
parameter表达式varchar|nvarchar
returnsvarchar|nvarchar
*/
SELECTRTRIM('ABCD')--ABCD
/*
17,SOUNDEX返回由四个字符表达的SOUNDEX代码
parameter表达式varchar
returnsvarchar
!参考DIFFERENCE函数
*/
SELECTSOUNDEX('ABCD')--A120
SELECTSOUNDEX('hello')--A120
/*
18,SPACE返回由重复空格组成的字符串
parameter表达式integer
returnschar
*/
SELECTSPACE(10)--[]
SELECTLEN(SPACE(10))--0
/*
19,STR返回从默认表达转换而来的字符串
parameter表达式float
(可选)长度integer,default
(可选)小数位数integer,default
returnschar
*/
SELECTSTR(100)--[100]
SELECTSTR(100,10,2)--[100.00]
SELECTSTR(100.66666,10,2)--[100.67]
SELECTLTRIM(STR(100.66666,10,2))--[100.67]
SELECTSTR(100.66666,10)--[101]
/*
20,STUFF删除指定长度的字符,并在指定的起点处插入另一组字符
parameter要搜索的表达式varchar|nvarchar|varbinary
开始位置bigint
字符数bigint
替换表达式varchar|nvarchar|varbinary
returnsvarchar|nvarchar|varbinary
*/
SELECTSTUFF('abcd',1,4,'1')--1
SELECTSTUFF('abcd',2,4,'1')--a1
SELECTSTUFF('abcd',2,3,'1')--a1
SELECTSTUFF('abcd',3,4,'1')--ab1
SELECTSTUFF('abcd',4,4,'1')--abc1
SELECTSTUFF('abcd',5,4,'1')--NULL
SELECTSTUFF('abcd',1,1,'1')--1bcd
SELECTSTUFF('abcd',1,2,'1')--1cd
SELECTSTUFF('abcd',1,3,'1')--1d
SELECTSTUFF('abcd',1,4,'1')--1
SELECTSTUFF('abcd',1,5,'1')--1
SELECTSTUFF('abcd',1,500,'1')--1
SELECTSTUFF('abcdefg',2,4,'xxx')--axxxfg
/*
21,SUBSTRING返回字符表达式,二进制,文本表达式或图像表达的一部分
parameter表达式varchar|nvarchar|text|ntext|varbinary|image
开始位置bigint
长度bigint
returnsvarchar|nvarchar|text|ntext|varbinary|image
*/
SELECTSUBSTRING('abcd',1,1)--a
SELECTSUBSTRING('abcd',2,1)--b
SELECTSUBSTRING('abcd',3,1)--c
SELECTSUBSTRING('abcd',4,1)--d
SELECTSUBSTRING('abcd',1,1)--a
SELECTSUBSTRING('abcd',1,2)--ab
SELECTSUBSTRING('abcd',1,3)--abc
SELECTSUBSTRING('abcd',1,4)--abcd
SELECTSUBSTRING('abcdefg',2,3)--bcd
/*
22,UNICODE返回表达第一个字符的UNICODE整数值
parameter表达式nvarchar
returnsinteger
!仅返回首字符
*/
SELECTUNICODE('a')--97
SELECTUNICODE('中国人')--20013
SELECTUNICODE('中国')--20013
SELECTUNICODE('中')--20013
/*
23,UPPER返回将小写字符转换为大写字符的字符表达式
parameter表达式varchar|nvarchar
returnsvarchar|nvarchar
*/
SELECTUPPER('a')--'A'
猜测您可能对下边的文章感兴趣
如果您喜欢该博客请点击右下角推荐按钮,您的推荐是作者创作的动力!
[/code]
相关文章推荐
- SQL SERVER 2008 函数大全 - 字符串函数
- [原创]SQL SERVER 2008 函数大全 - 字符串函数
- SQL SERVER 2008 函数大全 - 字符串函数
- SQL SERVER 2008 函数大全 - 字符串函数
- SQL SERVER 2008函数大全(含例子)之01
- 例说SQL SERVER 2008内置函数之字符串函数
- SQL Server 2008 函数大全(完整版)
- sql server 2008以上版本常用函数简要说明
- SQL Server 2008连接字符串写法大全
- SQL Server 2008连接字符串写法大全
- C语言字符串函数大全函数名
- sql server 2008 建表是自动添加时间问题 时间格式化函数
- SQL Server 2008 R2——创建函数 筛选出字符串中的数字 筛选出字符串中的非数字
- 【SQL 编程你也行】SQL Server新功能之函数:sum函数(2005、2008、2012、2014)
- 数据库常用函数大全(数学函数、字符串函数、其他函数)
- SQL Server 2008连接字符串写法大全(备用)
- SQL Server 2008 分区函数和分区表详解
- Oracle 函数大全(字符串函数,数学函数,日期函数,逻辑运算函数,其他函数)
- SQL Server 2008 分区函数和分区表
- Oracle 函数大全(字符串函数,数学函数,日期函数,逻辑运算函数,其他函数)