0
我有一个表,其具有像值的标签字段:与查找替换CSV值到另一个表
table1
______
data1, data2, data3
我有ID的映射到每一块像数据的第二表:
table2
_________
id | info
1 | data1
2 | data2
3 | data3
等等
我想做一个查找/ table1中更换使得标签字段现在包含了逗号分隔的ID从表2所示:
table1
______
1,2,3
我的mysql很生锈。我在想这样的事情:
UPDATE table1
SET tags = REPLACE(tags, '', '')
WHERE tags LIKE ???
但可以使用一些帮助填补空白。有什么办法可以做到这一点? 值得注意的是,不幸的是,并不是t1标签中的每一项都会在t2中有匹配的条目。
没有更多的列/行,但只是为了简单起见 – jco
hmm。这看起来不起作用,因为我只在更新的字段中看到一个值,而其他值为空。我应该提到,如果在t2中没有匹配,理想情况下我想保留t1标记字段中的现有值。 – jco
@jco。 。 。这实际上改变了问题的结构。如果你真的需要这样做,我建议你改变数据库的结构,使标签位于不同的行而不是逗号分隔的列表中。这样的列表通常表示数据库结构不佳。换句话说,这个答案是解决糟糕的数据库设计的一个窍门,但你不想太过分。 –