如何实现oracle的最大匹配

来源:百度知道 编辑:UC知道 时间:2024/05/18 08:09:31
如有2个字符串'12345678'和'1235678'
在匹配表中有两条记录
行号 匹配字段 匹配结果
1 1234 A
2 12 B
怎么才能用一条语句实现将'12345678'匹配到'A',而'1235678'匹配到B呢?
或者说怎么才能先让字符串去匹配'1234',再去匹配'12'

假如匹配表的名字叫ppb,两个字符串存在另外一个标tmp中,字段名为column,
select b.column,(case when substr(column,1,4)=a.匹配字段 then a.匹配结果 else (case when substr(column,1,2)=a.匹配字段 then a.匹配结果 else null end) end) zd_pp
from ppb a,tmp b
没有调试.大致应该是这样吧!