DATE_ADD 只添加工作日?

DATE_ADD only add business days?

我如何计算以下跳过周末而只包括工作日的数据?

DATE_ADD(A.PO_SENT_DATE, INTERVAL C.DELIVERY_BUS_DAYS DAY) AS PROMISE_DATE

数据示例如下所示,其中 DELV_DATE 是 order_date 加上 DELV_BUS_DAYS 仅添加工作日

+------------+-------------+-----------------+
| order_date | DELV_BUS_DAYS |    DELV_DATE   |
+------------+-------------+----------------- +
| 08/08/19   | 16           |       xxxx     |
| 08/08/19   | 16           |       xxxx     |
+------------+-------------+-----------------+

这应该让你在 BQ 中得到它:

SELECT
  DATE_ADD(CURRENT_DATE(), INTERVAL (17 + DATE_DIFF('2021-09-03',CURRENT_DATE(),WEEK(SATURDAY)) + DATE_DIFF('2021-09-03',CURRENT_DATE(),WEEK(SUNDAY))) DAY)

希望这对您有所帮助:)