如果为null,oracle有一个很好的内置函数,但是我想做= 0;有一个简单的方法来做到这一点?
nvl(instr(substr(ovrflo_adrs_info,instr(ovrflo_adrs_info,’bldg’)+5),’ ‘),
length(substr(ovrflo_adrs_info,’bldg’)+5))))
这将作为substr函数的参数.
如果instr(substr(ovrflo_adrs_info,’bldg’)5),”)是!= 0那么我想要那个值,否则我想要长度的值(substr(ovrflo_adrs_info,’bldg’) ))))
是否有捷径可寻?
我想你需要使用
CASE
例如
WHEN instr(substr(ovrflo_adrs_info,'bldg')+5),' ') != 0 THEN length(substr(ovrflo_adrs_info,'bldg')+5)) ELSE Some Default END as foo