3

不确定是否可以在 select 语句中使用 trim:

基本上想在找到字符之前修剪字符串中的任何字符:

说有值(名称)Oliver、Dave 和我想在找到“v”之前修剪所有字符,以便之后这些值将是“ver”和“ve”

再一次,对于 trim 语句来说,这听起来太复杂了,除非有一种简单的方法可以将它与 LIKE 组合来搜索这样的东西。

可能在这里超越了自己,但如果有人可以帮助启发它,那将是一件有用的事情:)

4

2 回答 2

3

也许像

SELECT REGEXP_SUBSTR('David', 'v.*') from dual
 WHERE REGEXP_LIKE('David', 'v.*')

关于 REGEXP_SUBSTR 的说明:http: //docs.oracle.com/cd/B19306_01/server.102/b14200/functions131.htm

REGEXP_LIKE:http ://docs.oracle.com/cd/B14117_01/server.101/b10759/conditions018.htm

于 2012-04-18T04:59:19.223 回答
2

您可以使用 REGEXP 或使用 SUBSTR/INSTR:

SELECT CASE WHEN INSTR(mycolumn,'v') > 0
            THEN SUBSTR(mycolumn,INSTR(mycolumn,'v'))
            ELSE mycolumn
       END
FROM ....
于 2012-04-18T06:18:57.610 回答