SQL Server中的小技巧(重复、替换、截取、去空格、去小数点后的位数)

PS:随笔写的在SQL Server中要用到的 (重复、替换、截取、去空格、去小数点后的位数)

复制代码
/*---------------------------重复--------------------------------*/

--重复字符串 返回【abc#abc#abc#】
select replicate('abc#', 3);

/*---------------------------替换--------------------------------*/

--替换字符串 将e替换成E 返回【abcEdEf】
--replace('字符串', '替换前的文字', '替换后的文字')
select replace('abcedef', 'e', 'E');

--指定位置替换字符串  返回【heABCworld】
--stuff('字符串', 从哪里开始替换, 替换几位, '要替换的字符')
select stuff('hello world', 3, 4, 'ABC');



/*----------------------------截取--------------------------------*/

--截取字符串 返回【a    ,ab    ,Wrold】
--subString('字符串', 从哪里开始截取, 截取几位)
select subString('abc', 1, 1), subString('abc', 1, 2), subString('hello Wrold', 7, 5);

--取左边字符串  返回【left,leftStr】
--left('字符串', 从左边开始取几位)
select left('leftString', 4);
select left('leftString', 7);

--取右边字符串  返回【String,ing】
--right('字符串', 从右边开始取几位)
select right('leftString', 6);
select right('leftString', 3);


/*---------------------------去空格----------------------------------*/

--去掉左边空格
select ltrim(' abc'), ltrim('# abc#'), ltrim('  abc');

--去掉右边空格
select rtrim(' abc    '), rtrim('# abc#   '), rtrim('abc');



/*-------------------------去小数点后的位数----------------------------*/


--用函数ROUND(数值,s) ,其中s 表示小数位数
SELECT ROUND(4.994,2) --返回4.990

--用函数CAST(数值as numeric(n,s)),其中n表示有效数字位数,s表示小数位数
SELECT CAST(4.994 as numeric(10,2))--搜索返回4.99

--用函数CONVERT(numeric(n,s),数值),其中n表示有效数字位数,s表示小数位数
SELECT CONVERT(numeric(10,2),4.9852222)-- 返回4.99
posted @ 2019-07-01 21:30  业容天  阅读(...)  评论(... 编辑 收藏