有人可以帮忙。我一直在搜索和遇到/修改此代码我得到1或0作为结果。如果在()和0之间有某些东西,如果没有,则为1。如果有什么东西,我希望找到它们之间的确切内容。所以,如果我在野外有一个看起来像这样的字符串:“ABC(989)你好”目前我得到1作为我的结果我想得到“989”。任何帮助将不胜感激。
选择,OUTCNTCTNOTE regexp'[(] | \ \ []]'作为测试 来自trcalls.callcoding;
答案 0 :(得分:3)
要完成第一个答案,因为传递给substr的第三个参数是子字符串的长度,我们需要减去开始parantheses的索引,所以:
substr(columnname,instr(columnname,"(") + 1, instr(columnname,")") - instr(columnname,"(") - 1)
应该做的伎俩
答案 1 :(得分:2)
select substr(columnname,instr(columnname,"(") + 1, instr(columnname,")")) as temp from mytable
接近,我测试了这个。请看看这是否有帮助!
答案 2 :(得分:0)