根据2个mysql表之间的关系更新字段

时间:2010-10-06 09:44:18

标签: mysql

我有2个mysql表,如下所示:

表-A

id,retailer_message,logos_id

标志

id,name

table_a有一个retailer_message字段,其中包含“亚马逊特卖”等记录 例如,logos表具有名称字段为“Amazon”的记录。

现在我想做的是根据与徽标表的关系更新table_a logos_id。

以下示例

表-A

id, retailer_message, logos_id
1, On sale at Amazon
2, On sale at Asda

标志

id, name
1, Amazon
2, Misco
3, Asda
4, Tesco

然后,这将更新table_a并分别插入1和3的logos_id。

有人可以提供SQL代码段来实现这一目标吗?

由于

1 个答案:

答案 0 :(得分:1)

如果您始终拥有与消息开头相同的消息(“On sale at”),您可以使用以下内容:

update table_a set logos_id = (select id from logos where name = substring(retailer_message,12));