将1个表列中的文本匹配到另一个表列中的字符串的一部分

时间:2012-10-11 10:14:50

标签: php mysql sql

我正在尝试将一个表中的列中的文本与第二个表的列中的字符串的一部分进行匹配,如果匹配,则将在我的网页上输出图像。以下是一个例子

产品

ID | Prod_Code | Colours
1    100         Yellow, Orange, Navy

颜色

ID | Colour | Image Link
1    Yellow   Yellow swatch image
2    Orange   Orange swatch image

我想要实现的是,如果products.colours包含文本“黄色”,黄色样本图像将出现在屏幕上,橙色等相同。

我知道该表应该针对最佳实践进行标准化,但不幸的是,这不是由我设计的,并且存在时间限制。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

尝试这样的事情:

SELECT p.Prod_Code, c.Image_Link 
FROM Products AS p
  INNER JOIN Colours AS c 
  ON p.Colour LIKE '%' + c.Colour + '%' ;

如果您有黄色,黄色等颜色,那可能会有点梨形。