我想知道如何在数据库中计算一年中的周期总数。例如,计算一年的总假期。你知道吗
我正在使用:
Django - 1.11.7
Postgres - 9.4
这是我的型号.py地址:
class Leave(models.Model):
leavedatefrom = models.DateField()
leavedateto = models.DateField()
举例说明这个问题:
leaves taken in 1 year (01/01/2019 - 31/12/2019)
record 1: (leavedatefrom)01/02/2019 - (leavedateto)05/02/2019 ===> 5 days
record 2: (leavedatefrom)10/05/2019 - (leavedateto)12/05/2019 ===> 3 days
Total days = 5 + 3 = 8 days
如何用Django计算一年中数据库中周期的天数?基本上我想在上面的例子中得到8天。你知道吗
下面是获取句点列表的简单方法。你知道吗
从系统中取出所有休假记录,并找出每个记录的天数。你知道吗
通过使用^{} 和^{} django查找,您基本上可以进行一个查询来获取一年中所有相关的叶子。
例如:
然后检查所有的叶子,计算它们之间的天数差,并将其相加为另一个变量:
有关计算日期范围的详细信息和选项,请参见How to calculate number of days between two given dates?。你知道吗
编辑: 如果您不想每次迭代都命中DB,可以进行一个优化,即使用django^{} :
我想我有点晚了。您可以在一个SQL查询中获得天数的总和
在
filter(...)
子句中,可以添加过滤条件,例如datetime
或user specific data
说明
diff_date_in_integer
注释字段中)中注释leavedateto
和leavedatefrom
之间的差异diff_date_in_integer
数据转换为days
aggregate()
函数和Sum()
DB函数,我们求出总天数。你知道吗相关问题 更多 >
编程相关推荐