Meridianmeridian

Compact Date (YYYYMMDD)

datetime.date.compact_ymd

Eight-digit date with no separators, year-first. Common in file naming, partition keys, and data warehousing (e.g. 20240115).

Domain
datetime
Category
date
Casts to
DATE
Scope
Universal

Try it

CLI
$ finetype infer -i "20240115"
→ datetime.date.compact_ymd

DuckDB

Detect
SELECT finetype('20240115');
-- → 'datetime.date.compact_ymd'
Cast expression
strptime({col}, '%Y%m%d')::DATE
-- Format: %Y%m%d
Safe cast pipeline
-- Normalise and cast in one step
SELECT TRY_CAST(finetype_cast(my_column) AS DATE) AS clean_value
FROM my_table
WHERE finetype(my_column) = 'datetime.date.compact_ymd';

JSON Schema

finetype schema datetime.date.compact_ymd
{
  "$id": "https://meridian.online/schemas/datetime.date.compact_ymd",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "description": "Eight-digit date with no separators, year-first. Common in file naming, partition keys, and data warehousing (e.g. 20240115).",
  "examples": [
    "20240115",
    "20191231"
  ],
  "maxLength": 8,
  "minLength": 8,
  "pattern": "^\\d{8}$",
  "title": "Compact Date (YYYYMMDD)",
  "type": "string",
  "x-finetype-broad-type": "DATE",
  "x-finetype-format-string": "%Y%m%d",
  "x-finetype-transform": "strptime({col}, '%Y%m%d')::DATE"
}

Examples

2024011520191231

Aliases

numeric_ymd