SQL 字符串函数
SELECT STR(111.55678, 6, 2)
SELECT CONVERT(NVARCHAR(10),CONVERT(DECIMAL(6,2),111.55678))
SELECT CONVERT(NVARCHAR(10),CAST(111.55678 AS DECIMAL(6,2)))
-- 结果 111.56 STR,CONVERT,CAST 函数都会对小数点第3位进行四舍五入
SUBSTRING LEFT RIGHT --函数截取数据库表中的部分信息
SUBSTRING
/*
( edition ,start , length ) 从edition表达式的第start个字符开始截取length个
sourceString 资源字符串。
start : --子字符串在资源字符串中的起点。如果此值为负数或 0,则只返回那些所在位置大于零的字符。如果此值大于 sourceString 的长度,则返回长度为零的字符串。
length : 一个正整数,指定要返回的 sourceString 的字符数或字节数。如果 length 为负,则会返回错误。length 可以是 bigint 类型。
*/
LEFT
/*
sourceString 资源字符串
length 一个正整数,指定要返回的 sourceString 从左开始的字符数
*/
RIGHT
/*
sourceString 资源字符串
length 一个正整数,指定要返回的 sourceString 从右开始的字符数
*/
SELECT SUBSTRING ('sourceString',3,4)
SELECT RIGHT(LEFT('sourceString',6),4)
--结果 urce
-- REPLACE STUFF 字符串替换函数
-- Replace函数: 用另一个字符串值替换出现的所有指定字符串值。
-- 语法:
REPLACE
/*
语法:REPLACE ( original , search , replace )
original,:被搜索的字符串。可为任意长度。。string_expression1 可以是字符或二进制数据类型。
search :要搜索并被 replace-string 替换的字符串。该字符串的长度不应超过 255 个字节。如果 search-string 是空字符串,则按原样返回原始字符串。
replace :该字符串用于替换 search-string。可为任意长度。如果 replacement-string 是空字符串,则删除出现的所有 search-string。
*/
SELECT REPLACE('edition','tion','aaaa');
--STUFF()函数: 删除指定长度的字符并在指定的位置插入另一组字符串。
/*
语法:STUFF ( sourceString , start , length , character_expression )
sourceString :操作的字符,
start :删除和插入的起始点,
length:删除的长度,
character_expression :要插入的字符
*/
select stuff('sourceString',2,3,'aaa')
--结果 saaaceString
/*LTRIM RTRIM 函数 字符串去除空格函数*/
--LTRIM 函数删除字符串前面的空格
/*
语法: LTRIM (sourceString )
sourceString :操作的字符,
*/
SELECT LTRIM('source ');
--RTRIM 函数删除字符串后面的空格
/*
语法: RTRIM (sourceString )
sourceString :操作的字符,
*/
SELECT RTRIM(' source');
--结果 source
/*REVERSE 字符串反转函数*/
--REVERSE 返回指定字符串的反转.
SELECT REVERSE('source ')
/*字符串长度函数*/
LEN:
select len(null) -- 返回字符串长度.(忽略串尾空格) NULL 的 len 的结果是 NULL。
SELECT DATALENGTH('2009-9-1') -- 返回任何表达式所占用的字节数, NULL 的 DATALENGTH 的结果是 NULL。
/*字符串大小写函数*/
-- 转换大写
SELECT UPPER('aaa') -- 转换为大写
SELECT LOWER('AAA') --转换为小写
SELECT LOWER('aAa') --全部转换为小写
select REPLICATE('123','3') --指定次数的字符串
/*字符串查找函数*/
--函数:第一个参数你要查找的char
--第二个参数你被查找的字符串 返回参数一在参数二的位置
select SUBSTRING('lihan',charindex('a','lihan'),1) --result为4
--SELECT PATINDEX('%wonderful%', ')
-- PATINDEX 匹配m 开头的字符串
SELECT PATINDEX('%m%',pnr),OrderID FROM orders
出处:http://www.cnblogs.com/liuyong/
作者喜欢研究 Sql Server ,ASP.NET MVC , Jquery WCF 等技术,同时关心分布式架构的设计应用。转载请保留原文链接,谢谢!
浙公网安备 33010602011771号