

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# netWorkDays


`netWorkDays`返回提供的两个日期字段之间的工作日数，甚至返回使用其他快速日期函数（例如`parseDate`或`epochDate`作为整数）生成的自定义日期值。

`netWorkDays` 假设标准每周工作 5 天，从星期一开始，到星期五结束。假设星期六和星期日为周末。计算结果包括 `startDate` 和 `endDate`。该函数运行并显示 DAY 粒度的结果。

## 语法


```
netWorkDays(startDate, endDate)
```

## Arguments


 *startDate*   
用作计算开始日期的有效非 NULL 日期。  
+ 数据集字段：要向其添加此函数的数据集中的任何 `date` 字段。
+ 日期函数：从其他 `date` 函数输出的任何日期，例如，`parseDate`。
+ 计算字段：任何返回`date`值的快速计算字段。
+ 参数：任何 Quick `DateTime` 参数。
+ 上述参数值的任意组合。

 *endDate*   
用作计算结束日期的有效非 NULL 日期。  
+ 数据集字段：要向其添加此函数的数据集中的任何 `date` 字段。
+ 日期函数：从其他 `date` 函数输出的任何日期，例如，`parseDate`。
+ 计算字段：任何返回`date`值的快速计算字段。
+ 参数：任何 Quick `DateTime` 参数。
+ 上述参数值的任意组合。

## 返回类型


整数 

## 输出值


预期的输出值包括：
+ 正整数（当 start\$1date < end\$1date 时）
+ 负整数（当 start\$1date > end\$1date 时）
+ 当其中一个或两个参数从 `dataset field` 中获得空值时，则为 NULL。

## 示例


以下示例返回介于两个日期之间的工作日数。

假设有一个名为 `application_date` 的字段，其值如下：

```
netWorkDays({startDate}, {endDate})
```

以下是给定的字段值。

```
startDate	endDate	netWorkDays
        9/4/2022	9/11/2022	5
        9/9/2022	9/2/2022	-6
        9/10/2022	9/11/2022	0
        9/12/2022	9/12/2022	1
```

以下示例计算每位员工的工作天数和为每位员工每天支出的工资：

```
days_worked = netWorkDays({employment_start_date}, {employment_end_date})
        salary_per_day = {salary}/{days_worked}
```

以下示例使用条件格式筛选在工作日结束雇佣的员工，并确定他们的雇佣是在工作日还是周末开始：

```
is_start_date_work_day = netWorkDays(employment_start_date)
        is_end_date_work_day = netWorkDays(employment_end_date)
```

![\[alt text not found\]](http://docs.amazonaws.cn/quick/latest/userguide/images/netWorkDays-function-example.png)
