Star Schema — Date Dimension (CSV)
The date dimension of a star schema — one row per day with a YYYYMMDD surrogate key and calendar attributes (year, quarter, month, weekday). Joins to the sales fact table on date_key.
date_key,date,year,quarter,month,day,weekday
20260101,2026-01-01,2026,1,1,1,Thursday
20260102,2026-01-02,2026,1,1,2,Friday
20260103,2026-01-03,2026,1,1,3,Saturday
20260104,2026-01-04,2026,1,1,4,Sunday
20260105,2026-01-05,2026,1,1,5,Monday
20260106,2026-01-06,2026,1,1,6,Tuesday
20260107,2026-01-07,2026,1,1,7,Wednesday
20260108,2026-01-08,2026,1,1,8,Thursday
20260109,2026-01-09,2026,1,1,9,Friday
20260110,2026-01-10,2026,1,1,10,Saturday
20260111,2026-01-11,2026,1,1,11,Sunday
20260112,2026-01-12,2026,1,1,12,Monday
20260113,2026-01-13,2026,1,1,13,Tuesday
20260114,2026-01-14,2026,1,1,14,Wednesday
20260115,2026-01-15,2026,1,1,15,Thursday
20260116,2026-01-16,2026,1,1,16,Friday
20260117,2026-01-17,2026,1,1,17,Saturday
20260118,2026-01-18,2026,1,1,18,Sunday
20260119,2026-01-19,2026,1,1,19,Monday
20260120,2026-01-20,2026,1,1,20,Tuesday
20260121,2026-01-21,2026,1,1,21,Wednesday
20260122,2026-01-22,2026,1,1,22,Thursday
20260123,2026-01-23,2026,1,1,23,Friday
20260124,2026-01-24,2026,1,1,24,Saturday
20260125,2026-01-25,2026,1,1,25,Sunday
20260126,2026-01-26,2026,1,1,26,Monday
20260127,2026-01-27,2026,1,1,27,Tuesday
20260128,2026-01-28,2026,1,1,28,Wednesday
20260129,2026-01-29,2026,1,1,29,Thursday
20260130,2026-01-30,2026,1,1,30,Friday
20260131,2026-01-31,2026,1,1,31,Saturday
Specifications
- Rows
- 31
- Key
- date_key (YYYYMMDD)
- Role
- dimension
What is a .csv file?
CSV (Comma-Separated Values) is a plain-text tabular format where rows are lines and fields are separated by commas, with quoting rules for values that contain delimiters, quotes, or newlines. It has no formal type system and depends on encoding and dialect conventions. It is the most portable format for tabular data exchange.
How to use this file
Use an example CSV to test parsers against quoting and embedded-delimiter edge cases, header handling, encoding detection, and import pipelines into databases or spreadsheets.
Code examples
import pandas as pd
df = pd.read_csv("dim_date.csv")
print(df.head())
print(df.dtypes)Related files
- csvE-commerce Customers (CSV, 500 rows)A realistic e-commerce customer directory (500 rows) — part of a relational dataset (products, customers, orders) with CSV, JSON, SQL, and Parquet twins for testing joins, imports, and conversion.

- csvE-commerce Orders (CSV, 2000 rows)A realistic e-commerce order lines (customer_id → customers, product_id → products) (2000 rows) — part of a relational dataset (products, customers, orders) with CSV, JSON, SQL, and Parquet twins for testing joins, imports, and conversion.

- csvE-commerce Products (CSV, 200 rows)A realistic e-commerce product catalogue (200 rows) — part of a relational dataset (products, customers, orders) with CSV, JSON, SQL, and Parquet twins for testing joins, imports, and conversion.

- avroAvro — Row Binary + SchemaThe same records as Apache Avro — a compact row-based binary format that embeds its own schema, widely used in Kafka pipelines. For testing Avro decoders and schema evolution.

- csvBank Transactions (CSV, 60 rows)A bank-transaction statement — 60 debits and credits across three accounts (masked numbers) with running balances, categories, and merchants. Synthetic data for testing statement parsers, categorisation, and reconciliation.

- jsonBank Transactions (JSON, 60 records)The bank transactions as a JSON array — the format twin of the CSV, for import and reconciliation testing.

Generated by generation/data_edgecases.py. Free for any use, no attribution required — license.