欢迎投稿

今日深度:

oracle中字符串相似度函数实测,oracle实测

oracle中字符串相似度函数实测,oracle实测


转载请注明出处:http://blog.csdn.net/songhfu/article/details/40074795

主要利用:oracle函数-SYS.UTL_MATCH.edit_distance_similarity

SQL脚本:

select * from (select '河北沧州东塑股份有限公司',name,

SYS.UTL_MATCH.edit_distance_similarity('河北沧州东塑股份有限公司',name) 相似度 from test_pp t) order by 相似度 desc




oracle中字符串比较

用instr(str1,str2[,m[,n]])函数,返回str1从第m字符开始,str2第n次出现的位置,m及n的缺省值为1。
例如你可以用instr(文本框中输入的字符串,'孙中山')。
 

oracle中一个字符串包含另一个字符串中的所有字符

select * from a where instr(a,b)>0;
这个只能实现B字段是A字段中的某一部分的时候,
如果想要不论顺序或者不相邻的字符时,定义函数可以实现
create or replace function checks(v_a varchar2,v_b varchar)
return number
as
num number;
cou number;
begin
num := -1;
cou:=0;
for i in 1..length(v_b) loop
if instr(v_a,substr(v_b,i,1))>0 then
cou:=cou+1;
end if;
end loop;
if cou=length(v_b) then
return cou;
end if;
dbms_output.put_line(cou||' '||length(v_b));
return num;
end;
结果:
SQL> select * from a;
A B
---------- ----------
asdf sd
asdf ad
asdf df
asdf asdf
SQL> select * from a where checks(a,b)>0;
A B
---------- ----------
asdf sd
asdf ad
asdf df
asdf asdf



 

www.htsjk.Com true http://www.htsjk.com/shujukunews/3850.html NewsArticle oracle中字符串相似度函数实测,oracle实测 转载请注明出处:http://blog.csdn.net/songhfu/article/details/40074795 主要利用: oracle函数-SYS.UTL_MATCH.edit_distance_similarity SQL脚本: select * from (select '河北...
评论暂时关闭