====== RequĂȘtes SELECT ======
Source: [[https://flask-sqlalchemy.palletsprojects.com/en/3.0.x/queries/]]
===== query.get() =====
**SELECT** selon un ID :
user = User.query.get(5)
===== query.filter_by() =====
**SELECT** selon le contenu d'un champ :
user = User.query.filter_by(name = 'Marc').first()
user = User.query.filter_by(name = 'Marc').one()
===== query.filter() =====
StackOverflow: [[https://stackoverflow.com/questions/2128505/difference-between-filter-and-filter-by-in-sqlalchemy|filter_by vs filter]]
users = User.query.filter(User.name.startswith('Al')).all()
users = User.query.filter(User.name.endswith('bert')).all()
users = User.query.filter(User.age.between(20, 30)).all()
users = User.query.filter(User.country_id == 2).all()
users = User.query.filter(User.age >= 50).all()
===== query.order_by() =====
# du plus petit au plus grand
users = User.query.order_by(User.age).all()
# du plus grand au plus petit
users = User.query.order_by(User.age.desc()).all()
# les 7 plus grands
users = User.query.order_by(User.age.desc()).limit(7).all()
===== Combiner filter_by et order_by =====
users = User.query.filter(User.age.between(20, 30)).order_by(User.age).all()
===== query.limit() =====
user = User.query.limit(1).all()