The Easy Way ============ The calendar.csv data file has dates from 01-Jan-2009 to 31-Dec-2022. If this covers your needs, you can simply load this. The build_calendar.sql script: creates the table loads the calendar.csv file updates the table with public holidays in the UK for years from 2013 to 2020 inclusive. More Dates ========== If you need a different date range, you can create your own calendar data: * download the file GenerateCalendar.jar * make sure you have a recent Java Runtime Environment (JRE) installed. You can download it from https://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html * run the jar file like this: java -jar GenerateCalendar.jar calendar.csv 2009-01-01 2022-12-31 Usage: GenerateCalendar file from_date to_date file: name (or path) of csv file of the dates to load the calendar dimension from_date: earliest date in the calendar dimension. Must be in format yyyy-mm-dd to_date: latest date in the calendar dimension. Must be in format yyyy-mm-dd More Columns ============ If you need more columns (such as the account closing date each month for your organisation, or public holidays in other countries, for example). You can adapt the Java source code and/or the scripts as you please.