我正在尝试使用字符串列表查询我的PostgreSQL数据库。我想要返回其列条目与该字符串匹配的所有行,并且我希望它不区分大小写,以便找到更多内容。
fruits = ['apple', 'orange', 'pear', 'grape', 'watermelon', 'asian pear']
在这种情况下,'asian pear'可以在数据库中大写。
obs = session.query(datamodel).filter(datamodel.fruitname._in(fruits)).all()
我知道func.lower()并且我将它用于个别查询,但我不确定在使用时将它放在哪里。
我在单项查询中使用func.lower:
obs =session.query(datamodel).filter(func.lower(datamodel.fruitname)==func.lower(fruits[5]))).first()
答案 0 :(得分:5)
愚蠢的我......
在写这个问题时,我想通了...... 这就是答案......
session.query(datamodel).filter(func.lower(datamodel.fruitname).in_(fruits)).all()