日期:2014-05-17  浏览次数:20772 次

表1一个字段通过表2的三个字段来 模糊匹配
表1 字段A B字段 
遵义市舟水桥(铁合金厂内)
淄博开发区柳泉路北首
准格尔旗薛家湾镇
驻马店市文明路中段(天龙酒店对面)
驻马店市解放路中段
诸暨市枫桥镇枫北路(步森集团内)
诸城市昌城镇西老庄村
珠海唐家湾镇金凤路1号
珠海市香洲唐家湾镇科技一路珠海万力达电气股份有限公司办公楼2楼201室
珠海市湾仔南湾南路5002号9-10栋底层4号商场
珠海市水湾路365-367号
珠海市前山工业区华威路611号第一栋第一层
珠海市前山港昌路903号漾湖明居13栋2单元409房
珠海市前山岱山路88号
珠海市南水镇南水桥头洋洲酒店322室N区
珠海市南屏镇南屏工业集团大厦十楼
珠海市南屏科技工业园振威路一号
珠海市吉大九洲大道东1227号交行大厦电银部(筹)
珠海市吉大景山路东大商业中心12楼
珠海市吉大景山路92号12楼
珠海市吉大景山路188号粤财大厦19层12-14单元


表2

A B C D

云南 临沧 凤庆 1

内蒙古自治区 呼伦贝尔市 海拉尔区 2
内蒙古自治 呼伦贝尔 满洲里 3
内蒙古自治 呼伦贝尔 牙克石 4

Q:如何用 表2的A B C 一起模糊匹配表1 A字段? 然后把对应
表2的D字段的1,2,3,4内容填入表1字段B?


注意表2 ABC 有顺序要求

------解决方案--------------------
表1的数据只有1个字段啊,第2个字段的数据是什么?
------解决方案--------------------
怎么就算达到你据说的模糊匹配了呢,举个例子。
------解决方案--------------------
update 表1
set 表1.字段B = (select 表2.字段D
from 表2
where 表1.字段A like '%'||表2.字段A||'%'||表2.字段B||'%'||表2.字段C||'%'
and rownum < 2
);
------解决方案--------------------
探讨
update 表1
set 表1.字段B = (select 表2.字段D
from 表2
where 表1.字段A like '%'||表2.字段A||'%'||表2.字段B||'%'||表2.字段C||'%'
and rownum < 2
);