数据库
首页 > 数据库> > SQL 字符串函数

SQL 字符串函数

作者:互联网

SQL 常用的字符串函数

1.replace:替换函数replace(string,from_str,to_str)

即:将string中所有出现的from_str替换为to_str


2.left:left:(string,2) 从边选取两个


3.right:
right(string,2) 从右边选取两个


4.substring:字符串,起始下标,长度

返回提取的字符串, select substring (‘abcdefg’,2,2)得到结果:bc,从第2位开始截取,截取两位。
substring (str,pos):str代表字符串;pos代表从第位置开始到结尾的所有字符串;注意此语法不适用于sql server


5.ascii(字符串):返回字符串表达式中最左侧的ASCII代码值: select ASCII(‘S’) 得到结果83


6.char(字符):将整数类型的ASCII值转换为对应的字符;select char(83) 得到结果s

 

7.cast :类型转换函数 ; cast (expression as data_type); as 用于分隔两个参数,

在as之前的是要处理的数据,在as之后是要转换的数据类型
data_type:目标系统所提供的数据类型,包括bigint和sql_variant ,不能使用用户定义的数据类型
select cast(‘12’ as int) 字符串转换为int,不能执行四舍五入或截取操作
cast不可以转换日期类型,convert可以通用


8.convert: convert(data_type,expression[,STYLE])

convert(数据类型,表达式)
参数说明:expression: 是任何有效的sql server 表达式
data_type:目标系统所提供的数据类型,包括bigint和sql_variant ,不能使用用户定义的数据类型
select 100.0 + convert(int,‘1000’) --默认把字符串转换为整形
select * from student order by convert(int,bid) desc --bid列按照降序来排列,bid是varchar类型
print convert(varchar(10),getdate(),120) 日期转换varchar(10) 表示显示的字符长度,120表示style
9.space: 返回指定个数空格的字符串
select ‘A’ +space(2)+‘B’ --A B


10.str : 函数由数字数据转换来的字符数据
语法:str(float_expression [,length[,decimal]])
参数:float_expression 是带小数点的近似数字(float) 数据类型表达式 ,不要在str函数中将函数或子查询用作float_exproession
length:是总长度,包括小数点,符号、数字或空格。默认值为10.
decimal:是小数点右边的位数
返回类型 char


11.charindex:返回字符串中指定表达式的起始位置
语法:charindex(expression1,expression2 ,start_location)


expression1在expression2中的开始位置,start_location,默认从位置1处开始查询
select charindex(‘a’,‘abcdefg’) 返回 1
select charindex(‘a’,‘abcdefg’,1) 返回 1
select charindex(‘b’,‘abcdefg’,1) 返回 2
select charindex(‘b’,‘abcdefg’,2) 返回2
select chairindex(‘b’,‘abcdefg’,3) 返回0
select charindex(‘cd’,‘abcdefg’,3) 返回3


12.lower:返回转换为小写的字符串
select lower(‘AVGDFG’)


13.upper:返回转换为大写的字符串
select upper(‘asdfg’)


14.ltrim:返回去左空格的字符串
select ltrim(’ asdf’)


15.rtrim:返回去右空格的字符串
select rtrim(‘asdfrr ‘)


16.patindex:返回指定表达式中模式第一次出现的开始位置
select patindex(’%cd%’,‘abcdefg’) 返回3
select patindex(’%_cd%’,‘abcdefg’) 返回2
select patindex(’%ca",‘abcdefg’) 返回0


17.quotename: 返回为成为有效的sql server 分隔符标识符而添加了分隔符的Unicode字符串
select quotename(‘a’) – [a]
select quotename(‘abcd’)-- [abcd]
select quotename(‘abcd’,’’) – [abcd]


18.replicate:返回指定次数重复的表达式
select replicate(‘a’,4) --aaaa
select replicate(‘abc|’,4) --abc|abc|abc|abc|


19.reverse :返回反转后的字符串
select reverse(‘abc’) – cba


20.len:返回字符段的长度
select len(‘abcdefg’) --7


21.stuff:删除指定长度的字符,并在指定的起点处插入另一组字符
语法:stuff(character_expression,start,length,character_expression)


character_expression 被搜索的字符串


start 开始位置

 


length 要删除的长度

character_expression 替换字符串


eg: select stuff(‘abcd’,1,4,‘1’) --1


select stuff(‘abcdefg’,2,3,‘1111’) – a1111efg


select stuff('abcdefg’2,3,‘11’) – a11efg

标签:返回,函数,SQL,str,abcdefg,字符串,expression,select
来源: https://www.cnblogs.com/lqq22/p/16313032.html