Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak obliczyć, czy wiek mieści się w zakresie od roku urodzenia, podczas pobierania roku urodzenia z Db w Django ORM

Możesz użyć relativedelta z dateutil , wygodniej jest obliczyć czas:

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 ma 25 lat, age_36 jest 36 lat temu, wystarczy zapytać, czy data urodzin ludzi przypada między 25 a 36 lat temu.

Dla lte i gte sprawdź django doc po szczegóły.

Edytuj :

Właściwie django orm obsługuje range zapytanie, więc po prostu zrób:

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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. apostrof podczas wstawiania (Mysql)

  2. Dostęp do prywatnej zmiennej w PHP (PDO)

  3. C# Zbyt wiele połączeń w MySQL

  4. Jak przechowywać plik w bazie danych mysql za pomocą blob

  5. Przetwarzaj dane utf-8 z MySQL w C++ i oddaj wynik