Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So berechnen Sie, ob das Alter im Bereich des Geburtsjahres liegt, während das Geburtsjahr von Db in Django ORM abgerufen wird

Vielleicht möchten Sie relativedelta verwenden von dateutil , ist es bequemer, die Zeit zu berechnen:

import datetime
from dateutil.relativedelta import relativedelta

today = datetime.date.today()
age_25 = (today - relativedelta(years=25)).year
age_36 = (today - relativedelta(years=36)).year
Employees.objects.filter(birth_year__lte=age_25, birth_year__gte=36)

age_25 ist vor 25 Jahren age_36 vor 36 Jahren liegt, fragen Sie einfach ab, ob die Geburtstage der Personen zwischen 25 und 36 Jahren liegen.

Für lte und gte siehe django doc für Details.

Bearbeiten :

Tatsächlich unterstützt Django orm range Abfrage, also tun Sie einfach:

Employees.objects.filter(birth_year__range=[age_36, age_25])