我正在阅读PostgreSQL 9.3文档中的materialized views并阅读以下示例,该示例在拼写检查单词时提供:
SELECT word FROM words ORDER BY word <-> 'caterpiler' LIMIT 10;
我尝试过搜索Google和StackOverflow,但是标点符号被过滤掉了,我看不出它所指的是什么。有人可以解释它的用途和用途吗?
也许是文档的链接,我可以在其中详细了解其用法的详细信息?
答案 0 :(得分:4)
根据http://www.postgresql.org/docs/9.1/static/pgtrgm.html,此运算符<->
返回字符串之间的编辑距离
text&lt; - &gt; text real返回参数之间的“距离”,即1减去similarity()值。
因此整个查询在编辑距离方面寻找与“caterpiler”这个词最相似的10个单词
答案 1 :(得分:1)
这是找到两个几何图形之间距离的算子(参见documentation)。另外,根据Levenshtein's,字符串之间的“距离”(this?文档没有明确说明):
text <-> text
返回参数之间的“距离”,即1减去similarity()值。
答案 2 :(得分:0)
它是“距离”运算符,但它只是记录的操作数是几何类型(点,形状等)。
经过一些字符串实验后,它似乎返回了levenstein distance:
的函数'abc' <-> 'abc'
- &gt; 0 'abc' <-> 'abcd'
- &gt; 0.5 'abc' <-> 'abd'
- &gt; 0.6666