sql 截取字符串:
1、LOCATE(substr , str ):返回子串 substr 在字符串 str 中第一次出现的位置,如果字符substr在字符串str中不存在,则返回0;
2、POSITION(substr IN str ):返回子串 substr 在字符串 str 中第一次出现的位置,如果字符substr在字符串str中不存在,与LOCATE函数作用相同;
3、LEFT(str, length):从左边开始截取str,length是截取的长度;
4、RIGHT(str, length):从右边开始截取str,length是截取的长度;
5、SUBSTRING_INDEX(str ,substr ,n):返回字符substr在str中第n次出现位置之前的字符串
6、SUBSTRING(str ,n ,m):返回字符串str从第n个字符截取到第m个字符;
7、REPLACE(str, n, m):将字符串str中的n字符替换成m字符;
8、LENGTH(str):计算字符串str的长度。
工具/材料:Management Studio。
1、首先在桌面上,点击“Management Studio”图标。
2、之后在该界面中,点击左上角“新建查询”选项。
3、接着在该界面中,输入截取指定字段某一个字符出现后的后面的字符串的sql语句“
select substring(name,charindex(',',name)+1,len(name)-charindex(',',name)) from test2”。
4、然后在该界面中,点击左上方“执行”按钮。
5、最后在该界面中,显示截取指定字段某一个字符出现后的后面的字符串成功。
sql语句可以截取指定字段后面的字符串,以sqlserver为例,需要用到charindex函数和substring函数。如test表中有如下数据,要求截图str字段中逗号后边的内容。
可用如下语句:
select id,substring(str,charindex(',',str)+1,len(str)-charindex(',',str)) from test结果截图:
charindex函数说明:
语法:
CHARINDEX
(
expression1
,
expression2
,
[
start_location
]
)
参数:
expression1
一个表达式,其中包含要寻找的字符的次序。expression1
是一个短字符数据类型分类的表达式。
expression2
一个表达式,通常是一个用于搜索指定序列的列。expression2
属于字符串数据类型分类。
start_location
在
expression2
中搜索
expression1
时的起始字符位置。如果没有给定
start_location,而是一个负数或零,则将从
expression2
的起始位置开始搜索。
substring函数说明:
语法:
substring(
expression,
start,
length)
参数:
expression
字符串、二进制字符串、文本、图像、列或包含列的表达式
start
整数或可以隐式转换为
int
的表达式,指定子字符串的开始位置
length
整数或可以隐式转换为
int
的表达式,指定子字符串的长度
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)