Memandangkan definisi model di bawah:
class User(Base): ... birthday = Column(Date, index=True) # Ex. '1987-01-17' in the database ...
Objektifnya adalah untuk mendapatkan semula semua pengguna dalam lingkungan umur, seperti mereka yang berumur antara 18 dan 30 tahun.
Untuk mencapai penapisan yang diingini, pertanyaan SQLAlchemy berikut boleh digunakan:
query = DBSession.query(User).filter( User.birthday.between('1985-01-17', '1988-01-17') )
Penjelasan:
Selain daripada menggunakan operator antara(), terdapat kaedah lain untuk menapis medan tarikh:
# Filter by upper bound date query = DBSession.query(User).filter(User.birthday <= '1988-01-17') # Filter by lower bound date query = DBSession.query(User).filter(User.birthday >= '1985-01-17') # Filter by equality query = DBSession.query(User).filter(User.birthday == '1987-01-17')
Atas ialah kandungan terperinci Bagaimana Menapis Pengguna SQLAlchemy mengikut Julat Umur Menggunakan Medan Tarikh?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!