首页 > 解决方案 > 如何过滤日期

问题描述

我正在使用 django 编程,我有这个变量:

a = '2019-08-03'

我有一个数据库,它有两列开始和结束,如下所示:

start = 2019-08-01 00:00:00.000000
end = 2019-08-15 00:00:00.000000

显然 start 和 end 有很多值。我想得到 a 在开始和结束之间的行。我能怎么做 ?

我想到了这样的事情:

c = myObject.objects.filter(mycondition)

但我想我必须正确地进行转换,然后在...之间进行类似的转换...你能帮帮我吗?

我精确我可以像这样修改a = 2019-08-03 00:00:00.000000

标签: pythondjangopython-3.x

解决方案


您可以过滤这些以使条件start ≤ a ≤ end成立:

Model.objects.filter(start__lte=a, end__gte=a)

如果您想提高健身效果,db_index在您的startend字段上添加一个可能会有所帮助。


推荐阅读