Does Django generate "WHERE ... BENWEEN ..." sentences?

Actually, somewhere in the view:

dif = datetime.timedelta(days=1)
today = datetime.date.today()
yesterday = today - dif
ex = Fact.objects.filter(fecha_fact__lte=today ,fecha_fact__gte=yesterday )

This is the result of SQL Query:

SELECT `facts_fact`.`id` ...
FROM `facts_fact` 
WHERE (`facts_fact`.`fecha_fact` >= 2009-09-21 AND `facts_fact`.`fecha_fact` <= 2009-09-22 ) 

There is a way to make Django a WHERE BETWEEN clause instead of> = <=?

:) thanks.

+3
source share
2 answers

Have you tried range?

Fact.objects.filter(fecha_fact__range=(yesterday, today))
+4
source

I don't know, but maybe (gte / lte):

q1 = Entry.objects.filter(headline__startswith="What")
q2 = q1.exclude(pub_date__gte=datetime.now())
q3 = q1.filter(pub_date__gte=datetime.now())


q = Entry.objects.filter(headline__startswith="What")
q = q.filter(pub_date__lte=datetime.now())
0
source

Source: https://habr.com/ru/post/1718330/


All Articles