Teradata
如何在 Teradata 中測量文本相似度(Jaro-Winkler)?
在 Oracle 中,我們可以使用 Jaro-Winkler 測量文本相似度,如下所示:
SELECT UTL_MATCH.JARO_WINKLER_SIMILARITY('STACKEXCHANGE', 'STAMPEXCHANGE') MYSTRING FROM DUAL; --98
事實證明,Teradata 也有 Jaro-Winkler,如此處所述。不幸的是,我只是不理解那裡的文件和範例。
到目前為止,我在 Teradata 中可以做的是使用 EDITDISTANCE:
SELECT EDITDISTANCE('STACKEXCHANGE', 'STAMPEXCHANGE') MYSTRING; --2
那麼,如何在 Teradata 中使用 Jaro-Winkler 測量文本相似度?誰能給我一些簡單的例子?
16.20.24.01 是 FU1,FU2 是 16.20.40.01+
此函式不是標量函式,它是用於集合處理的表運算符語法。你必須習慣它,但是那些運營商非常強大。
SELECT * FROM StringSimilarity ( ON ( SELECT 1 as id, 'STACKEXCHANGE' as a, 'STAMPEXCHANGE' as b -- FROM ... ) PARTITION BY ANY USING ComparisonColumnPairs ('jaro_winkler(a,b) AS jw_dist') Accumulate ('id') ) AS dt