首页 > 解决方案 > 如何检查 SQLAlchemy 数据库列是否与 python 部分匹配?

问题描述

我在 SQLAlchemy 数据库中有一列标题,我想进行一个查询,以返回匹配率超过 70% 的任何列。现在,我正在使用以下内容,但这仅返回与子字符串直接匹配的字符串。

title = "computer"
Items = Items.query.filter(Items.titles.contains(title)).order_by(title.likes).all()

我还使用以下内容返回两个字符串的百分比匹配,并希望在查询中使用类似的内容。

from difflib import SequenceMatcher

def similar(a, b):
    return SequenceMatcher(None, a, b).ratio()

similar("computer","comptrue")

我知道我可以返回数据库中的所有对象,然后遍历这些对象以检查分数,但我想知道是否有更快的方法。谢谢!

标签: pythonpostgresqlfiltersqlalchemy

解决方案


推荐阅读