sql >> Database >  >> RDS >> Mysql

Hoe te berekenen of de leeftijd in het bereik van het geboortejaar ligt, terwijl het geboortejaar wordt opgehaald van Db in Django ORM

Misschien wilt u relativedelta . gebruiken van dateutil , is het handiger om de tijd te berekenen:

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 is 25 jaar geleden, age_36 is 36 jaar geleden, vraag maar naar de verjaardagen van de mensen tussen 25 en 36 jaar geleden.

Voor lte en gte check django-document voor details.

Bewerken :

Eigenlijk ondersteunt django orm range vraag, dus doe gewoon:

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



  1. MYSQL telling van telling?

  2. MySQL IN-clausule:max aantal argumenten

  3. Is er een stuurprogramma voor mysql op nodejs dat opgeslagen procedures ondersteunt?

  4. rechter haakje fout ORA-00907 in Oracle