![]() |
1
2
您可以提前生成工作日表。
然后执行如下查询:
您将需要一个带有循环的存储过程来生成WorkingDays表,但不用于常规查询。与使用应用程序代码计算天数相比,到服务器的往返次数也更少。 |
![]() |
2
2
最好的方法是使用日历表。 然后,您的查询可能看起来像:
希望能有所帮助, RB。 |
![]() |
3
1
只需在应用程序代码中计算…更简单,您不必在SQL中编写一个非常难看的查询。 |
![]() |
4
1
这里有一种方法-使用dateadd函数。 我要把这个答案从桌子上拿下来。这在很长的交货期内不能正常工作。它只是简单地增加了提前期中的休假天数,并将日期推后。当新范围内出现更多休息日时,这将导致问题。
|
![]() |
5
0
你为什么反对使用循环? //一些伪代码
这似乎是一个太简单的函数,试图找到一个非循环的方式。 |
![]() |
6
0
隐马尔可夫模型。。一种解决方案是存储一个日期表,其中包含基于年初非休假天数计数的偏移量。假设1月2日是休息日。1/1/08的偏移量为1(如果您想从0开始,则为0)。1/3/08的偏移量为2,因为计数跳过1/2/08。从那里,它是一个简单的计算。获取订单日期的偏移量,添加提前期,然后查找计算的偏移量以获取结束日期。 |
![]() |
7
0
一种方法(不创建另一个表)是使用一种上限函数:对于每个offdate,在子查询中找出相对于订单日期,在它前面出现了多少“on date”。然后取小于提前期的最大数字。使用与之相对应的日期,加上剩余的日期。 这段代码可能是特定于PostgreSQL的,很抱歉,如果这不是您正在使用的代码。
|
![]() |
8
0
这是PostgreSQL语法,但应该很容易翻译成其他SQL方言。
本遗嘱 不归 在非工作日表(订单号3)的最后一个日期之后将完成的订单的结果,因此必须注意按时插入非工作日。假定订单不会在非工作日开始。 |
![]() |
NanoTech · 在bash-awk命令中格式化日期 6 月前 |
![]() |
JFS · 如何计算日期之间的天数? 7 月前 |
![]() |
Shiela · 日期/时间格式VBA访问查询 7 月前 |
![]() |
Paul · 如何在HTML日期中隐藏“mm/dd/yyyy”占位符 7 月前 |
![]() |
ViSa · 如何从Pandas的列中提取日期? 10 月前 |
![]() |
Niky Rathod · Excel-根据组的多个日期范围计算工作日 11 月前 |
![]() |
Carlos Moretti · 如何在Java日期API中返回时间 11 月前 |