Table des matières

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: 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()