数据映射 - 酒店

时间:2013-06-24 20:14:24

标签: java sql

目前我有两个数据按酒店名称,国家,城市和邮政编码单独列出。虽然我有另一个包含相同但需要映射并匹配原始数据的数据列表。

例如,

第一个数据有:

Name: Sheraton 
Country: USA
City: Dallas
Zip Code: 31141

其他数据有:

Name: Sheraton hotel 
Country: USA 
City: Dallas
Zip code: 31141

有没有办法让我能够执行一些查询,我可以从第二个数据中映射“shearton hotel”并将其映射到原有的“sheraton”,考虑到数据不仅仅是87K。

期待一种方法。

1 个答案:

答案 0 :(得分:0)

要连接这两个表,您可以使用内连接,但是如何进行连接取决于您的数据如何相互映射而不知道这一点我不认为这里的任何人可以为您提供更多建议。如果它就像第二个表中的name字段一样简单,总是与第一个表中的name字段相同,加上一些随机的额外字符,您可能会做这样的事情:

SELECT table1.*, table2.* FROM table1 
INNER JOIN table2 ON table2.name LIKE table1 + '%' 
AND table1.Country = table2.country 
AND table1.city = table2.city 
AND table1.[Zip code] = table2.[Zip code]

映射在联接的table2.name LIKE table1 + '%'部分完成。 如果有两个以上的酒店共享一个共同的名称基础和其他标识符,这当然会产生奇怪的结果......

这个答案是基于推测的,因为您没有提供有关表格设计或项目如何相互映射的大量信息。