# Full Weekday with Abbreviated Month

Key: `datetime.date.weekday_abbreviated_month`

Full weekday name followed by abbreviated month. Locale-specific for both weekday names and month abbreviations.

Page: <https://meridian.online/docs/finetype/types/datetime/date/weekday_abbreviated_month>

Format: `%A, %b %d, %Y`

Samples: `Monday, Jan 15, 2024`, `Tuesday, 31 Dec 2019`

## Use it

Shell

```shell
finetype infer -i 'Monday, Jan 15, 2024' --mode column
# → datetime.date.weekday_abbreviated_month
```

DuckDB

```sql
SELECT ft_infer('Monday, Jan 15, 2024');
-- → 'datetime.date.weekday_abbreviated_month'
```

Cast template: {col} is your column

```sql
strptime({col}, ['%A, %b %d, %Y', '%A, %d %b %Y'])::DATE
-- Format: %A, %b %d, %Y
```

## Background

### Origin

FineType defines this type itself, as a full weekday name followed by an abbreviated month name.[[1]](https://raw.githubusercontent.com/meridian-online/finetype/main/labels/definitions_datetime.yaml) FineType's registry describes the format as locale-specific for both weekday names and month abbreviations.[[1]](https://raw.githubusercontent.com/meridian-online/finetype/main/labels/definitions_datetime.yaml) FineType's registry names the format string %A, %b %d, %Y for this type.[[1]](https://raw.githubusercontent.com/meridian-online/finetype/main/labels/definitions_datetime.yaml)

In the POSIX strftime specification, %A is replaced by the locale's full weekday name.[[2]](https://pubs.opengroup.org/onlinepubs/9799919799/functions/strftime.html) POSIX strftime replaces %b with the locale's abbreviated month name.[[2]](https://pubs.opengroup.org/onlinepubs/9799919799/functions/strftime.html)

RFC 9110 gives Sunday, 06-Nov-94 08:49:37 GMT as an example of the obsolete RFC 850 date format.[[3]](https://www.rfc-editor.org/rfc/rfc9110.html) RFC 9110's rfc850-date grammar begins with a full weekday name, from Monday to Sunday, followed by a comma.[[3]](https://www.rfc-editor.org/rfc/rfc9110.html) RFC 9110 requires recipients to interpret an rfc850-date that appears to be more than 50 years in the future as the most recent past year with the same last two digits.[[3]](https://www.rfc-editor.org/rfc/rfc9110.html) Treat an HTTP-style value with hyphens and a two-digit year as its own format rather than as this one. (Meridian's view)

### Use

Microsoft's Excel documentation lists the date code dddd as displaying days as Sunday–Saturday.[[4]](https://support.microsoft.com/en-us/office/format-numbers-as-dates-or-times-418bd3fe-0577-47c8-8caa-b4d30c528309) Microsoft's Excel documentation lists the date code mmm as displaying months as Jan–Dec.[[4]](https://support.microsoft.com/en-us/office/format-numbers-as-dates-or-times-418bd3fe-0577-47c8-8caa-b4d30c528309) Microsoft's Excel documentation says date formats that begin with an asterisk respond to changes in regional date and time settings.[[4]](https://support.microsoft.com/en-us/office/format-numbers-as-dates-or-times-418bd3fe-0577-47c8-8caa-b4d30c528309)

Python's datetime documentation notes that field orderings will vary, for example month/day/year versus day/month/year.[[5]](https://docs.python.org/3/library/datetime.html) Parse with the locale the file was written in, and check a few month abbreviations against that locale before trusting a whole column. (Meridian's view) Expect month-first and day-first values to share a column, and decide the order from the shape of each value rather than assuming one. (Meridian's view) The weekday adds nothing once the date is parsed, which makes it a cheap consistency check: recompute it from the parsed date and flag any row where the two disagree. (Meridian's view) Prefer a try-style parse when sweeping a mixed column, and count the rows it fails on before deciding what to do with them. (Meridian's view)

## Sources

1. [definitions\_datetime.yaml](https://raw.githubusercontent.com/meridian-online/finetype/main/labels/definitions_datetime.yaml) — FineType
2. [strftime](https://pubs.opengroup.org/onlinepubs/9799919799/functions/strftime.html) — standard
3. [RFC 9110: HTTP Semantics](https://www.rfc-editor.org/rfc/rfc9110.html) — standard
4. [Format numbers as dates or times](https://support.microsoft.com/en-us/office/format-numbers-as-dates-or-times-418bd3fe-0577-47c8-8caa-b4d30c528309) — documentation
5. [datetime — Basic date and time types](https://docs.python.org/3/library/datetime.html) — documentation
