SQLServer内置函数

类型转换函数cast和convert

--cast一般更容易使用,convert的优点是可以格式化日期和数值
select CAST('123' as int)   -- 123
select CONVERT(int, '123')  -- 123

select CAST(123.4 as int)   -- 123
select CONVERT(int, 123.4)  -- 123 

select CAST('123.4' as int) --失败
select CONVERT(int, '123.4') --失败

select CAST('123.4' as decimal)  -- 123
select CONVERT(decimal, '123.4') -- 123 


select CAST('123.4' as decimal(9,2))  -- 123.40
select CONVERT(decimal(9,2), '123.4') -- 123.40


declare @Num money
set @Num = 1234.56
select CONVERT(varchar(20), @Num, 0)  -- 1234.56
select CONVERT(varchar(20), @Num, 1)  -- 1,234.56
select CONVERT(varchar(20), @Num, 2)  -- 1234.5600

字符函数

--len()用来计算字符串的长度
select LEN('123456') --6
select LEN('一二三') --3
select LEN('一23') --3

--lower()用来将一个字符串转换为小写,upper()用来将一个字符串转换为大写
select lower('ABC') --abc
select upper('abc') --ABC

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

--substring(string,start_position,length) 可以从任意位置取任意长度的子字符串
select substring('HelloWorld!',6,6)   ---World!
--left(string,length) 从左侧开始取子字符串
select left('HelloWorld!' ,5)  --Hello
--right(string,length)从右侧开始取子字符串
select right('HelloWorld!' ,6) --World!

--replace(string,要被替换的字符串,替换的字符串)
select replace('aaabbbcccdddaaabbbcccddd','aa','11') --11abbbcccddd11abbbcccddd

--reverse(string_expression)返回字符串值的逆向值
select reverse('abc') --cba

--删除指定长度的字符,并在指定的起点处插入另一组字符
--stuff(character_expression , start , length ,character_expression)
select stuff('aaabbbcccdddaaabbbcccddd',4,6,'222333')  --aaa222333dddaaabbbcccddd

--以指定的次数重复字符串值
--replicate(string_expression ,integer_expression)
select replicate('123',5)  --123123123123123

--返回字符串中指定表达式的开始位置
--charindex(expression1 ,expression2  , start_location )或charindex(expression1 ,expression2 )
--expression1在expression2 中的开始位置
select charindex('H','elloHWorld') --5

 

转载于:https://www.cnblogs.com/lgxlsm/p/5037785.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值