SQL Server之字符串函数

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

SQL Server之字符串函数

以下所有例子均Studnet表为例:

计算字符串长度

len()用来计算字符串的长度

select sname ,len(sname) from student

字符串转换为大、小写

lower() 用来将一个字符串转换为小写,upper() 用来将一个字符串转换为大写

select lower('I AM A STUDENT !')

select upper('i am a student !')

截去字符串左、右侧空格

ltrim() 用来将一个字符串左侧的空格去掉,rtrim()用来将一个字符串右侧的空格去掉

declare @str varchar(100)

set@str='我的左侧有空格!'

select @str as初始字符, len(@str) as初始长度,ltrim(@str) as现有字符,len(ltrim(@str)) as现有长度

返回由重复的空格组成的字符串

space(integer_expression)integer_expression 指示空格个数的正整数。如果inte ger_expression 为负,则返回空字符串。

select 'A'+ space(2)+'B'

取子字符串

substring(string,start_position,length) 可以从任意位置取任意长度的子字符串,

left(string,length) 从左侧开始取子字符串

right(string,length)从右侧开始取子字符串

select substring('HelloWorld!',6,6)

select left('HelloWorld!',5)

select right('HelloWorld!',6)

字符串替换

replace(string,要被替换的字符串,替换的字符串)

select replace('HelloWorld!','o','e') 结果为:HelleWerld!

返回字符串值的逆向值

reverse(string_expression)

select reverse('abc') 结果为:cba

删除指定长度的字符,并在指定的起点处插入另一组字符

stuff(character_expression , start , length ,character_expression)

start 一个整数值,指定删除和插入的开始位置。

length 一个整数,指定要删除的字符数。

select stuff('abcdefg',1,6,'Hello ') 结果为:Hello g

以指定的次数重复字符串值

replicate(string_expression ,integer_expression)

select replicate('abc',4) 结果为:abcabcabcabc

返回字符串中指定表达式的开始位置

charindex(expression1 ,expression2 , start_location )或charindex(expression 1 ,expression2 )

expression1在expression2 中的开始位置

select charindex('H','elloHWorld') 结果为:5

返回指定表达式中模式第一次出现的开始位置

patindex('%pattern%',expression) 返回指定表达式中某模式第一次出现的起始位置;如果在全部有效的文本和字符数据类型中没有找到该模式,则返回零。

select patindex('%Hello%','WorldHello') 结果为:6

返回输入表达式的第一个字符的整数值

unicode( 'ncharacter_expression' )'ncharacter_expression '为nchar 或nv archar 表达式。

select unicode('a') 结果为:97

select unicode('abc') 结果为:97

返回由数字数据转换来的字符数据

str(float_expression , length ,decimal )

float_expression 带小数点的近似数字(float) 数据类型的表达式。

length 总长度。它包括小数点、符号、数字以及空格。默认值为10。

decimal 小数点右边的小数位数。decimal 必须小于等于16。如果decimal 大于16,则将结果截断为小数点右边的16 位。

select str(123.436,2), len(str(123.436,2)) //当表达式超出指定长度时,字符串为指定长度返回**

select str(123.436), len(str(123.436)),

str(123.436,6), len(str(123.436,6)),

str(123.436,6,1), len(str(123.436,6,1)) //由六个数字和一个小数点组成的表达式转换为有六个位置的字符串。数字的小数部分舍入为一个小数位。

select str(1234.436), len(str(1234.436)),

str(1234.436,6), len(str(1234.436,6)),

str(1234.436,6,1),len(str(1234.436,6,1))

相关文档
最新文档