flask_sqlalchemy_query

models

python class User(db.Model): __tablename__ = 'users' id = db.Column(db.Integer, primary_key=True) username = db.Column(db.String(64), unique=True, index=True) rolename = db.Column(db.String(64), index=True) last_login = db.Column(db.DateTime, nullable=True, index=True)

1. 查询第一个

python User.query.filter_by(username="admin").first()

2. 查询全部

python User.query.all()

3. 只查询某个字段

python db.session.query(User.username).all()

4. 对某个字段的结果去重

python db.session.query(User.rolename.distinct()).all()

5. 按时间查找

python starttime=datetime.datetime.now() - datetime.timedelta(minutes=60) endtime=datetime.datetime.now() db.session.query(User).filter(User.last_login<endtime,User.last_login>starttime).all()

6. 查询某个字段匹配到的行

``python
db.session.query(User.rolename.in_([“admin”,”user”])).all()
```