2013-06-23 34 views
1

嗨我需要的结果products.name白色=之前是在交替productsmap表。Sql php 2表的匹配

products.name是一个varchar 255和例子的结果是

Haven 

productsmap.alternates是文本和例子的结果是

=Havens go 
=Haven 1 
=Haven 

这是一个CEL

我以下尝试,但我没有得到任何结果,我知道我必须得到一个结果。

SELECT DISTINCT products.name 
FROM products 
WHERE CONCAT('=',products.name) in (select alternates from productsmap) 

该查询需要1分钟并给出0行。

回答

0

两个表格之间的模糊链接可以改进。例如,这个映射表将更好地执行:

ProductName  Alternative 
Haven   Havens go 
Haven   Haven 1 
Haven   Haven 

要查询当前表布局'Havens go',你可以:

select distinct p.name 
from products p 
join productsmap pm 
on  pm.alternative like '=' + p.name + '%' 
where pm.alternative = '=Havens go' 
+0

谢谢您的回答。我的sql skliks不是很好,但我想要做的是从products.name中得到所有产品映射交替单元格中的结果。我无法更改当前的数据库,因为它使用得多。 – Dave

+0

对于匹配的所有行,完全删除'where'子句 – Andomar