Flask-SQLAlchemy提供了筛选查询的选项。您可以通过多种方式筛选查询 - Flask-SQLAlchemy文档提供的示例:
User.query.filter_by(username='peter') # Returns all users named 'peter'
User.query.filter(User.email.endswith('@example.com')) # Returns all users with emails ending in '@example.com'
我还发现这是一对多的关系:
User.query.filter(User.addresses.any(address=address)) # Returns all users who have a particular address listed as one of their addresses
问题:
答案 0 :(得分:18)
有关过滤器列表,请选中SQLAlchemy documentation
我会使用什么过滤器来检查用户的电子邮件是否包含在特定的一组电子邮件地址中?
列在查询中使用.in_()
方法。如下所示:
res = User.query.filter(User.email.in_(('x1@dom1.com', 'x2@dom2.com')))
Here您可以找到表达式的列方法列表。
答案 1 :(得分:0)
更新的链接:
SQLAlchemy文档:查询 https://docs.sqlalchemy.org/en/latest/orm/query.html
列元素 https://docs.sqlalchemy.org/en/latest/core/sqlelement.html
通用过滤器运算符 http://docs.sqlalchemy.org/en/latest/orm/tutorial.html#common-filter-operators
列运算符 https://docs.sqlalchemy.org/en/latest/core/sqlelement.html#sqlalchemy.sql.operators.ColumnOperators