1.1 all(), first(), get()的使用
# all():用户查询所有数据
User.query.all()
# first(): 用户查询第一条数据
User.query.first()
# get(): 需要传递, 查询主键与参数相同的数据
User.query.get(1)
1.2filter(), filter_by实现过滤操作
条件查询提供了filter()与filter_by来实现, filter_by可以看做是filter的简写方式.
# 1.实现如下:
# (1).filter()实现的条件查询
User.query.filter(User.username=='name').first()
# (2).filter_by()实现的条件查询
User.query.filter_by(username="name").first()
1.3 分页与排序
# 1.限制查询(分页)
User.query.filter(age=18).offset(2).limit(3).all() # 跳过二条开始查询,限制输出3条
注意: offset与limit先后顺序调换, 不影响查询结果
# 2.排序
# (1).按照年龄升序排序, 默认升序, 可以省略".asc()"
User.query.order_by(User.age.asc()).all()
# (2).按照年龄降序排序
User.query.order_by(User.age.desc()).all()
1.4 逻辑运算与聚合
# 1.逻辑运算
from sqlalchemy import or_, and_, n