Oracle语句

Oracle语句,oracle,Oracle,下表记录如下 D:\HOME\DOC\FILE\2001\12\TT-12S2Q99-EE-EE1.pdf D:\HOME\DOC\FILE\2002\02\TT-12S2Q94-EE-EE1.xml D:\HOME\DOC\FILE\2005\05\TT-12S2Q98-EE-EE1.pdf D:\HOME\DOCS\TEMPFILE\TT-12S2Q88-EE-EE1.pdf 我只想提取那些文件名。结果应该是 TT-12S2Q99-EE-EE1 TT-12S2Q94

下表记录如下

D:\HOME\DOC\FILE\2001\12\TT-12S2Q99-EE-EE1.pdf  
D:\HOME\DOC\FILE\2002\02\TT-12S2Q94-EE-EE1.xml  
D:\HOME\DOC\FILE\2005\05\TT-12S2Q98-EE-EE1.pdf  
D:\HOME\DOCS\TEMPFILE\TT-12S2Q88-EE-EE1.pdf  
我只想提取那些文件名。结果应该是

TT-12S2Q99-EE-EE1    
TT-12S2Q94-EE-EE1   
TT-12S2Q98-EE-EE1    
TT-12S2Q88-EE-EE1

谁能帮我一把

看看SUBSTR和INSTR函数


如果你在那之后仍然感到困惑,请发布你所做的最佳尝试。

看看SUBSTR和INSTR函数

如果你在那之后仍然被卡住了,请发布你所做的最好的尝试。

你可以使用第三个参数negative从字符串末尾向后搜索,这是我几分钟前才知道你可以做的事情。将其与SUBSTR结合,您应该拥有您想要的:

SQL> select filename from mytable; FILENAME -------------------------------------------------------------------------------- C:\path\to\some\file.txt SQL> select substr(filename, instr(filename, '\', -1) + 1) from mytable; SUBSTR(FILENAME,INSTR(FILENAME,'\',-1)+1) -------------------------------------------------------------------------------- file.txt 您可以使用第三个参数negative从字符串末尾向后搜索,直到几分钟前我才知道您可以这样做。将其与SUBSTR结合,您应该拥有您想要的:

SQL> select filename from mytable; FILENAME -------------------------------------------------------------------------------- C:\path\to\some\file.txt SQL> select substr(filename, instr(filename, '\', -1) + 1) from mytable; SUBSTR(FILENAME,INSTR(FILENAME,'\',-1)+1) -------------------------------------------------------------------------------- file.txt
到目前为止你有什么?到目前为止你有什么?这并不能回答这个问题。要评论或要求作者澄清,请在他们的帖子下方留下评论。这不是填鸭式的回答,不是。但由于OP似乎没有试图自己回答这个问题,我提供了一些建议来帮助他们。我会留下评论的,但我不认为stackoverflow当时有评论,这是2011年3月的回答是的,你是对的。在低质量帖子队列中显示这些旧答案可能不是一个好主意,因为当时的标准可能不适用。这并不能回答这个问题。要评论或要求作者澄清,请在他们的帖子下方留下评论。这不是填鸭式的回答,不是。但由于OP似乎没有试图自己回答这个问题,我提供了一些建议来帮助他们。我会留下评论的,但我不认为stackoverflow当时有评论,这是2011年3月的回答是的,你是对的。在低质量帖子队列中显示这些旧答案可能不是一个好主意,因为当时的标准可能不适用。