APP下载

SQL server 2008中的常见的字符串处理函数

2016-12-26桂云秋张磊周扬朱臣

科教导刊·电子版 2016年30期
关键词:数据类型字符串二进制

桂云秋 张磊 周扬 朱臣

摘 要 数据库查询于处理中常常会遇到对字符串的处理,因此熟悉常见的字符串处理函数对数据库的查询机数据处理有非常重要的作用,下面简要介绍SQL server 2008中的常见的字符串处理函数。

关键词 SQL server 2008 len函数 left函数与right函数 UBSTRING函数

数据库查询于处理中常常会遇到对字符串的处理,因此熟悉常见的字符串处理函数对数据库的查询机数据处理有非常重要的作用,下面简要介绍SQL server 2008中的常见的字符串处理函数。希望对读者有所帮助。

1 len函数

Len函数能返回指定字符串表达式的字符数,其中不包含尾随空格。其语法格式为LEN ( string_expression )。

以下示例在 Australia 地区的人的 FirstName 中选择字符数和数据。

SELECT LEN(FirstName) AS Length, FirstName, LastName

FROM Sales.vIndividualCustomer

WHERE CountryRegionName = Australia;

2 left函数与right函数

Left函数返回字符串中从左边开始指定个数的字符。其语法格式为LEFT ( character_expression , integer_expression )。

其中character_expression 可以是常量、变量或列。character_expression 可以是任何能够隐式转换为 varchar 或 nvarchar 的数据类型,但 text 或 ntext 除外。integer_expression为正整数,指定 character_expression 将返回的字符数。

以下示例返回每个产品名中最左边的五个字符。

SELECT LEFT(Name, 5)

FROM Production.Product

ORDER BY ProductID;

right函数和left函数的语法和用法类似,只是返回字符串中从右边边开始指定个数的字符,这里不再详细说明。

3 replace函数

replace函数可以实现用另一个字符串值替换出现的所有指定字符串值。其语法格式为REPLACE ( string_expression1 , string_expression2 , string_expression3 )。其中,string_expression1为要搜索的字符串表达式。string_expression1 可以是字符或二进制数据类型。string_expression2为要查找的子字符串。string_expression2 可以是字符或二进制数据类型。string_expression3为替换字符串。string_expression3 可以是字符或二进制数据类型。

以下示例使用 xxx 替换 abcdefghi 中的字符串 cde。

SELECT REPLACE(abcdefghicde,cde,xxx);

4 SUBSTRING函数

SUBSTRING函数返回字符表达式、二进制表达式、文本表达式或图像表达式的一部分。其语法格式为SUBSTRING ( value_expression ,start_expression , length_expression )。其中, value_expression为需要处理的字符串。start_expression为指定返回字符的起始位置的整数。length_expression为是正整数或指定要返回的 value_expression 的字符数的 bigint 表达式。

以下示例说明如何只返回字符串的一部分。该查询在一列中返回 Contact 表中的姓氏,在另一列中只返回名字首字母。

SELECT LastName, SUBSTRING(FirstName, 1, 1) AS Initial

FROM Person.Contact

WHERE LastName like Barl%

对于 ntext、char 或 varchar 数据类型,必须以字符数指定 start_expression 和 length_expression 的值;对于 text、image、binary 或 varbinary 数据类型,则必须以字节数指定。当 start_expression 或 length_expression 包含的值大于 2147483647 时,value_expression 的数据类型必须为 varchar(max) 或 varbinary(max)。

参考文献

[1] 杜佰林.网络数据库SQL Server 2000[M].清华出版社,2009,9.

[2] 何薇,舒后.网络数据库技术与应用[M].清华大学出版社,2014,10.

猜你喜欢

数据类型字符串二进制
用二进制解一道高中数学联赛数论题
详谈Java中的基本数据类型与引用数据类型
如何理解数据结构中的抽象数据类型
有趣的进度
二进制在竞赛题中的应用
一种新的基于对称性的字符串相似性处理算法
范畴数据类型上的子类型*
依据字符串匹配的中文分词模型研究
一种针对Java中字符串的内存管理方案
一个生成组合的新算法