【发布时间】:2018-02-16 00:21:28
【问题描述】:
我需要在 Oracle 中计算下一个工作日(工作日为周一至周五)。目前,在我们的报告程序中,我们使用一个支持<|Tomorrow|> 的变量,但问题是客户直到周日才收到所需的详细信息,比如周一交货,这是没有意义的,因为没有人在那里。
所以我们需要计算上一个星期五的星期一、星期一的星期二、星期二的星期三、星期三的星期四和星期四的星期五。
由于我们的报告程序似乎没有下一个工作日变量,因此直接在 Oracle 中执行此操作的最佳方法是什么。基本上我们需要把Where ORDER_HEADER.DELIVERY_DATE = '<|Tomorrow|>'改成Where ORDER_HEADER.DELIVERY_DATE = ** next business day **
这是 Oracle 10g。
Select ORDER_HEADER.DELIVERY_DATE As "Delivery Date",
ORDER_HEADER.ORDER_NO As "Document No",
ORDER_HEADER.CUSTOMER_ORDER_NO As "Customer Order No",
ORDER_TOTALS.ORDER_TOTAL_QUANTITY As "Total Items",
ORDER_TOTALS.ORDER_TOTAL_NET As "Total Net"
From ORDER_HEADER
Inner Join ORDER_TOTALS On ORDER_HEADER.ORDER_NO = ORDER_TOTALS.ORDER_NO
Where ORDER_HEADER.DELIVERY_DATE = '<|Tomorrow|>' And ORDER_HEADER.CUSTOMER_NO = :Param1
Order By "Document No"
【问题讨论】: