gpt4 book ai didi

mysql - SQLAlchemy 子字符串过滤

转载 作者:可可西里 更新时间:2023-11-01 08:10:07 27 4
gpt4 key购买 nike

我在我的 PostgreSQL 数据库中存储了包的类型:[“手拿包”、“单肩包”、“手提包”]。我正在编写一个基于 python flask 的 API 端点,用户可以使用它提供搜索词,如“红色单肩包”或“灰色手拿包”。现在我想使用 SQLAlchemy 编写一个查询,以便对于这些给定的搜索词,我能够在我的 Bags 表中查找该值。我写了这个,但它只有在用户输入的搜索字符串是复数时才有效,如果用户输入“Grey Clutch Bag”则无效

    categories = db.session.query(Bags.id) \
.filter(literal(search_string).ilike(func.concat('%', Bags.type, '%')))\
.all()

如何在过滤时从数据库中的包类型中去除尾随的's'?我希望能够这样查询:

type_in_db = "Clutch Bags" 
search_string = "Grey Clutch Bag"

if type_in_db.rstrip('s') in search_string:
return type_in_db

最佳答案

我不是非常有经验的 python 开发人员,但为什么不简单地:

 categories = db.session.query(Bags.id) \
.filter(Bags.type.like('%'+search_string+'%'))\
.all()

关于mysql - SQLAlchemy 子字符串过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37943531/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com