【发布时间】:2023-01-17 01:00:15
【问题描述】:
按相似度返回前 10 个结果的简单查询。
SELECT name, similarity(name, 'some text') as sm
FROM table
WHERE name % 'some text'
ORDER BY sm DESC
LIMIT 10
但是有一刻我需要扩展返回数据的limit。
例如,假设我在数据库some text 和20 rows 文本some text 2 中有11 rows 文本
这些文本相似,查询执行后结果只有 10 行 some text
如何返回所有重复的行,然后返回一些 LIMIT 数据?
预期结果将是
11 rows带有“一些文字”
之后 10 rows 在这种情况下具有其他相似性 'some text 2'
所有返回结果21
如何做到这一点?
【问题讨论】:
-
您应该将样本数据添加到您的问题中。
标签: postgresql pg-trgm