# First Day in the Week, Month, Quarter, or Year

Returns the date of the first day in the specified week, month, quarter, or year.

## Usage

Use these functions in a `foreach()` statement. You cannot use them in `group by`, `order by`, or `filter` statements.

Use the functions whose names begin with `week`, `month`, `quarter`, and `year` with standard calendar year dates. Use the functions whose names begin with `fiscal` with fiscal year dates.

:::note
You can't use fiscal date functions in recipes and dataflow transformations.
:::

## week_first_day(date)

Returns the date of the first day of the week for the specified date.

```nolang
q = foreach q generate week_first_day(toDate('CloseDate_sec_epoch')) as 'Week First Day';
```

:::note
This function always counts the `firstDayOfWeek` as 0 (Sunday). It overrides the `firstDayOfWeek` parameter for `sfdcDigestTransformation` and CSV uploads.
:::

## fiscal_week_first_day(date)

Returns the fiscal date of the first day of the week for the specified date.

```nolang
q = foreach q generate fiscal_week_first_day(toDate('CloseDate_sec_epoch')) as 'Fiscal Week First Day';
```

:::note
This function respects the `firstDayOfWeek` parameter for `sfdcDigestTransformation` and CSV uploads. The default value is 0 (Sunday).
:::

## month_first_day(date)

Returns the date of the first day of the month for the specified date.

```nolang
q = foreach q generate month_first_day(toDate('CloseDate_sec_epoch')) as 'Month First Day';
```

## fiscal_month_first_day(date)

Returns the fiscal date of the first day of the month for the specified date.

```nolang
q = foreach q generate fiscal_month_first_day(toDate('CloseDate_sec_epoch')) as 'Fiscal Month First Day';
```

## quarter_first_day(date)

Returns the date of the first day of the quarter for the specified date.

```nolang
q = foreach q generate quarter_first_day(toDate('CloseDate_sec_epoch')) as 'Quarter First Day';
```

## fiscal_quarter_first_day(date)

Returns the fiscal date of the first day of the quarter for the specified date.

```nolang
q = foreach q generate fiscal_quarter_first_day(toDate('CloseDate_sec_epoch')) as 'Fiscal Quarter First Day';
```

## year_first_day(date)

Returns the date of the first day of the year for the specified date.

```nolang
q = foreach q generate year_first_day(toDate('CloseDate_sec_epoch')) as 'Year First day';
```

:::note
This function always returns 1st January.
:::

## fiscal_year_first_day(date)

Returns the fiscal date of the first day of the year for the specified date.

```nolang
q = foreach q generate fiscal_year_first_day(toDate('CloseDate_sec_epoch')) as 'Fiscal Year First Day';
```

**See Also**

- [Date Formats and Fiscal Dates for Source Data](https://help.salesforce.com/s/articleView?id=bi_integrate_date_formats_and_fiscal_dates.htm)
