您好,欢迎来到[问答大全]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 问答大全 >> 电脑网络 >> 关于SQL语句截取字符串

关于SQL语句截取字符串

来源:网络整理     时间:2016/4/8 16:30:20     关键词:截取字符串,sql语句

关于网友提出的“关于SQL语句截取字符串”问题疑问,本网通过在网上对“关于SQL语句截取字符串”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题:关于SQL语句截取字符串
描述:

我的目的是以一个字符串为坐标截取,而不是以一个坐标点截取。
列如一个链接:http://bbs.csdn.net/topics/new?forum_id=MSSQL,http://bbs.csdn.net/forums/MSSQL我想以最后一个'/'反斜杠截取字符串,请问有什么方法?


解决方案1:

要看用什么数据库,有不同的函数,获取某一个字符最后出现的位置

解决方案2:

sql截取字符串前几位,sql截取字符串函数,sql 截取字符串 替换,sql 执行字符串语句,sql 执行字符串sql语句,sql substring字符串截取,sql语句截取字符串,sql语句中截取字符
我想通过一条sql语句去除这里面所有数据并且对'FILEURL'列进行截取,取出最后出现'\'反斜杠的后半部分,也就是取出文件名以及文件类型。

解决方案3:

SQL 中的LastIndexOf,截取最后一次出现字符后面的字符

SQL如何取出一个字符串中最后一个特殊字符右边的字符,例如:10*20*300,怎样得到300?
使用reverse配合charindex来实现。
reverse是把字符串倒置,然后通过charindex来获取倒置之后第一个*的位置,然后使用substring函数进行字符串截取,截取后再使用reverse倒置回来即可。
以下为例子
declare @str varchar(20)
set @str = '10*20*300'
select reverse(substring(reverse(@str),1,charindex('*',reverse(@str)) - 1))

结果是300
以上是SQLSERVER的语法。
ORACLE数据库也有REVERSE函数,不过SUBSTRING要改成SUBSTR,CHARINDEX函数要改成INSTR函数
SELECT reverse(substr(reverse('10*20*300'),1,INSTR(reverse('10*20*300'),'*') - 1)) FROM DUAL;
结果是300

可以参考
http://blog.csdn.net/junboyboy/article/details/24323565

解决方案4:

 --获取最后一个 / 后面的字符串
declare @str varchar(8000) 
set @str = 'http://bbs.csdn.net/topics/new?forum_id=MSSQL,http://bbs.csdn.net/forums/MSSQL' 
select reverse(substring(reverse(@str),1,charindex('/',reverse(@str)) - 1)) 
解决方案5:

SQL语句中截取字符串Substr
字符串UNION SQL语句
几个SQL语句。截取带条件的字符串
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

解决方案6:

select reverse(substring(reverse(FILEURL),1,charindex('/',reverse(FILEURL)) - 1)) from tableName


以上介绍了“关于SQL语句截取字符串”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/wd/608532.html

相关图片

相关文章