我有一个带有列的表 - 比如article_id - 对应于另一个表的主键。见下文。
我想用Levenshtein距离填充列'lev',计算如下:
LEVENSHTEIN(table1.string, table2.title)
... table1的article_id对应于table2的主键。
我正在使用Postgres,此功能是fuzzystrmatch模块的一部分。
表格的相关部分如下所示:
table1
id article_id string lev
1 134 'ace'
2 227 'bdg'
3 425 'hkl'
table2
id title
134 'Some title abc'
227 'Some title def'
425 'Some title ghi'
如何实现这一目标?
答案 0 :(得分:2)
UPDATE table1 as t1 SET lev=LEVENSHTEIN(t1.string, t2.title)
FROM table2 as t2
WHERE t1.article_id = t2.id
有用的参考:
答案 1 :(得分:2)
不知道你引用的库模块的任何信息,假设函数存在,这应该有效:
UPDATE table1 AS t1
SET lev = LEVENSHTEIN(t1.string,t2.title)
FROM table2 as t2
WHERE t1.articleid = t2.id