create table #UKHolidayDates (
dtDate datetime not null primary key,
chDescription varchar(255) not null
)
insert #UKHolidayDates (dtDate, chDescription)
select '01 Jan 1990', 'New Year''s Day' union all
select '13 Apr 1990', 'Good Friday' union all
select '16 Apr 1990', 'Easter Monday' union all
select '07 May 1990', 'Early May Bank Holiday' union all
select '28 May 1990', 'Spring Bank Holiday' union all
select '27 Aug 1990', 'Summer Bank Holiday' union all
select '25 Dec 1990', 'Christmas Day' union all
select '26 Dec 1990', 'Boxing Day' union all
select '01 Jan 1991', 'New Year''s Day' union all
select '29 Mar 1991', 'Good Friday' union all
select '01 Apr 1991', 'Easter Monday' union all
select '06 May 1991', 'Early May Bank Holiday' union all
select '27 May 1991', 'Spring Bank Holiday' union all
select '26 Aug 1991', 'Summer Bank Holiday' union all
select '25 Dec 1991', 'Christmas Day' union all
select '26 Dec 1991', 'Boxing Day' union all
select '01 Jan 1992', 'New Year''s Day' union all
select '17 Apr 1992', 'Good Friday' union all
select '20 Apr 1992', 'Easter Monday' union all
select '04 May 1992', 'Early May Bank Holiday' union all
select '25 May 1992', 'Spring Bank Holiday' union all
select '31 Aug 1992', 'Summer Bank Holiday' union all
select '25 Dec 1992', 'Christmas Day' union all
select '28 Dec 1992', 'Boxing Day' union all
select '01 Jan 1993', 'New Year''s Day' union all
select '09 Apr 1993', 'Good Friday' union all
select '12 Apr 1993', 'Easter Monday' union all
select '03 May 1993', 'Early May Bank Holiday' union all
select '31 May 1993', 'Spring Bank Holiday' union all
select '30 Aug 1993', 'Summer Bank Holiday' union all
select '27 Dec 1993', 'Christmas Day' union all
select '28 Dec 1993', 'Boxing Day' union all
select '03 Jan 1994', 'New Year''s Day' union all
select '01 Apr 1994', 'Good Friday' union all
select '04 Apr 1994', 'Easter Monday' union all
select '02 May 1994', 'Early May Bank Holiday' union all
select '30 May 1994', 'Spring Bank Holiday' union all
select '29 Aug 1994', 'Summer Bank Holiday' union all
select '26 Dec 1994', 'Boxing Day' union all
select '27 Dec 1994', 'Christmas Day' union all
select '02 Jan 1995', 'New Year''s Day' union all
select '14 Apr 1995', 'Good Friday' union all
select '17 Apr 1995', 'Easter Monday' union all
select '08 May 1995', 'Early May Bank Holiday (moved from 1st May for VE day)' union all
select '29 May 1995', 'Spring Bank Holiday' union all
select '28 Aug 1995', 'Summer Bank Holiday' union all
select '25 Dec 1995', 'Christmas Day' union all
select '26 Dec 1995', 'Boxing Day' union all
select '01 Jan 1996', 'New Year''s Day' union all
select '05 Apr 1996', 'Good Friday' union all
select '08 Apr 1996', 'Easter Monday' union all
select '06 May 1996', 'Early May Bank Holiday' union all
select '27 May 1996', 'Spring Bank Holiday' union all
select '26 Aug 1996', 'Summer Bank Holiday' union all
select '25 Dec 1996', 'Christmas Day' union all
select '26 Dec 1996', 'Boxing Day' union all
select '01 Jan 1997', 'New Year''s Day' union all
select '28 Mar 1997', 'Good Friday' union all
select '31 Mar 1997', 'Easter Monday' union all
select '05 May 1997', 'Early May Bank Holiday' union all
select '26 May 1997', 'Spring Bank Holiday' union all
select '25 Aug 1997', 'Summer Bank Holiday' union all
select '25 Dec 1997', 'Christmas Day' union all
select '26 Dec 1997', 'Boxing Day' union all
select '01 Jan 1998', 'New Year''s Day' union all
select '10 Apr 1998', 'Good Friday' union all
select '13 Apr 1998', 'Easter Monday' union all
select '04 May 1998', 'Early May Bank Holiday' union all
select '25 May 1998', 'Spring Bank Holiday' union all
select '31 Aug 1998', 'Summer Bank Holiday' union all
select '25 Dec 1998', 'Christmas Day' union all
select '28 Dec 1998', 'Boxing Day' union all
select '01 Jan 1999', 'New Year''s Day' union all
select '02 Apr 1999', 'Good Friday' union all
select '05 Apr 1999', 'Easter Monday' union all
select '03 May 1999', 'Early May Bank Holiday' union all
select '31 May 1999', 'Spring Bank Holiday' union all
select '30 Aug 1999', 'Summer Bank Holiday' union all
select '27 Dec 1999', 'Christmas Day' union all
select '28 Dec 1999', 'Boxing Day' union all
select '31 Dec 1999', 'Millenium Bank Holiday' union all
select '03 Jan 2000', 'New Year''s Day' union all
select '21 Apr 2000', 'Good Friday' union all
select '24 Apr 2000', 'Easter Monday' union all
select '01 May 2000', 'Early May Bank Holiday' union all
select '29 May 2000', 'Spring Bank Holiday' union all
select '28 Aug 2000', 'Summer Bank Holiday' union all
select '25 Dec 2000', 'Christmas Day' union all
select '26 Dec 2000', 'Boxing Day' union all
select '01 Jan 2001', 'New Year''s Day' union all
select '13 Apr 2001', 'Good Friday' union all
select '16 Apr 2001', 'Easter Monday' union all
select '07 May 2001', 'Early May Bank Holiday' union all
select '28 May 2001', 'Spring Bank Holiday' union all
select '27 Aug 2001', 'Summer Bank Holiday' union all
select '25 Dec 2001', 'Christmas Day' union all
select '26 Dec 2001', 'Boxing Day' union all
select '01 Jan 2002', 'New Year''s Day' union all
select '29 Mar 2002', 'Good Friday' union all
select '01 Apr 2002', 'Easter Monday' union all
select '06 May 2002', 'Early May Bank Holiday' union all
select '03 Jun 2002', 'Extra bank holiday to mark Queen Elizabeth''s Golden Jubilee in 2002' union all
select '04 Jun 2002', 'Spring Bank Holiday (moved from 27th May for Golden Jubilee of Elizabeth II)' union all
select '26 Aug 2002', 'Summer Bank Holiday' union all
select '25 Dec 2002', 'Christmas Day' union all
select '26 Dec 2002', 'Boxing Day' union all
select '01 Jan 2003', 'New Year''s Day' union all
select '18 Apr 2003', 'Good Friday' union all
select '21 Apr 2003', 'Easter Monday' union all
select '05 May 2003', 'Early May Bank Holiday' union all
select '26 May 2003', 'Spring Bank Holiday' union all
select '25 Aug 2003', 'Summer Bank Holiday' union all
select '25 Dec 2003', 'Christmas Day' union all
select '26 Dec 2003', 'Boxing Day' union all
select '01 Jan 2004', 'New Year''s Day' union all
select '09 Apr 2004', 'Good Friday' union all
select '12 Apr 2004', 'Easter Monday' union all
select '03 May 2004', 'Early May Bank Holiday' union all
select '31 May 2004', 'Spring Bank Holiday' union all
select '30 Aug 2004', 'Summer Bank Holiday' union all
select '27 Dec 2004', 'Christmas Day' union all
select '28 Dec 2004', 'Boxing Day' union all
select '03 Jan 2005', 'New Year''s Day' union all
select '25 Mar 2005', 'Good Friday' union all
select '28 Mar 2005', 'Easter Monday' union all
select '02 May 2005', 'Early May Bank Holiday' union all
select '30 May 2005', 'Spring Bank Holiday' union all
select '29 Aug 2005', 'Summer Bank Holiday' union all
select '26 Dec 2005', 'Boxing Day' union all
select '27 Dec 2005', 'Christmas Day' union all
select '02 Jan 2006', 'New Year''s Day' union all
select '14 Apr 2006', 'Good Friday' union all
select '17 Apr 2006', 'Easter Monday' union all
select '01 May 2006', 'Early May Bank Holiday' union all
select '29 May 2006', 'Spring Bank Holiday' union all
select '28 Aug 2006', 'Summer Bank Holiday' union all
select '25 Dec 2006', 'Christmas Day' union all
select '26 Dec 2006', 'Boxing Day' union all
select '01 Jan 2007', 'New Year''s Day' union all
select '06 Apr 2007', 'Good Friday' union all
select '09 Apr 2007', 'Easter Monday' union all
select '07 May 2007', 'Early May Bank Holiday' union all
select '28 May 2007', 'Spring Bank Holiday' union all
select '27 Aug 2007', 'Summer Bank Holiday' union all
select '25 Dec 2007', 'Christmas Day' union all
select '26 Dec 2007', 'Boxing Day' union all
select '01 Jan 2008', 'New Year''s Day' union all
select '21 Mar 2008', 'Good Friday' union all
select '24 Mar 2008', 'Easter Monday' union all
select '05 May 2008', 'Early May Bank Holiday' union all
select '26 May 2008', 'Spring Bank Holiday' union all
select '25 Aug 2008', 'Summer Bank Holiday' union all
select '25 Dec 2008', 'Christmas Day' union all
select '26 Dec 2008', 'Boxing Day' union all
select '01 Jan 2009', 'New Year''s Day' union all
select '10 Apr 2009', 'Good Friday' union all
select '13 Apr 2009', 'Easter Monday' union all
select '04 May 2009', 'Early May Bank Holiday' union all
select '25 May 2009', 'Spring Bank Holiday' union all
select '31 Aug 2009', 'Summer Bank Holiday' union all
select '25 Dec 2009', 'Christmas Day' union all
select '28 Dec 2009', 'Boxing Day' union all
select '01 Jan 2010', 'New Year''s Day' union all
select '02 Apr 2010', 'Good Friday' union all
select '05 Apr 2010', 'Easter Monday' union all
select '03 May 2010', 'Early May Bank Holiday' union all
select '31 May 2010', 'Spring Bank Holiday' union all
select '30 Aug 2010', 'Summer Bank Holiday' union all
select '27 Dec 2010', 'Christmas Day' union all
select '28 Dec 2010', 'Boxing Day' union all
select '03 Jan 2011', 'New Year''s Day' union all
select '22 Apr 2011', 'Good Friday' union all
select '25 Apr 2011', 'Easter Monday' union all
select '29 Apr 2011', 'Special bank holiday for the Royal Wedding' union all
select '02 May 2011', 'Early May Bank Holiday' union all
select '30 May 2011', 'Spring Bank Holiday' union all
select '29 Aug 2011', 'Summer Bank Holiday' union all
select '26 Dec 2011', 'Christmas Day' union all
select '27 Dec 2011', 'Boxing Day' union all
select '02 Jan 2012', 'New Year''s Day' union all
select '06 Apr 2012', 'Good Friday' union all
select '09 Apr 2012', 'Easter Monday' union all
select '07 May 2012', 'Early May Bank Holiday' union all
select '04 Jun 2012', 'Spring Bank Holiday (moved from 28th May)' union all
select '05 Jun 2012', 'Special bank holiday to mark Queen Elizabeth''s Diamond Jubilee' union all
select '27 Aug 2012', 'Summer Bank Holiday' union all
select '25 Dec 2012', 'Christmas Day' union all
select '26 Dec 2012', 'Boxing Day' union all
select '01 Jan 2013', 'New Year''s Day' union all
select '29 Mar 2013', 'Good Friday' union all
select '01 Apr 2013', 'Easter Monday' union all
select '06 May 2013', 'Early May Bank Holiday' union all
select '27 May 2013', 'Spring Bank Holiday' union all
select '26 Aug 2013', 'Summer Bank Holiday' union all
select '25 Dec 2013', 'Christmas Day' union all
select '26 Dec 2013', 'Boxing Day' union all
select '01 Jan 2014', 'New Year''s Day' union all
select '18 Apr 2014', 'Good Friday' union all
select '21 Apr 2014', 'Easter Monday' union all
select '05 May 2014', 'Early May Bank Holiday' union all
select '26 May 2014', 'Spring Bank Holiday' union all
select '25 Aug 2014', 'Summer Bank Holiday' union all
select '25 Dec 2014', 'Christmas Day' union all
select '26 Dec 2014', 'Boxing Day' union all
select '01 Jan 2015', 'New Year''s Day' union all
select '03 Apr 2015', 'Good Friday' union all
select '06 Apr 2015', 'Easter Monday' union all
select '04 May 2015', 'Early May Bank Holiday' union all
select '25 May 2015', 'Spring Bank Holiday' union all
select '31 Aug 2015', 'Summer Bank Holiday' union all
select '25 Dec 2015', 'Christmas Day' union all
select '28 Dec 2015', 'Boxing Day' union all
select '01 Jan 2016', 'New Year''s Day' union all
select '25 Mar 2016', 'Good Friday' union all
select '28 Mar 2016', 'Easter Monday' union all
select '02 May 2016', 'Early May bank holiday' union all
select '30 May 2016', 'Spring bank holiday' union all
select '29 Aug 2016', 'Summer bank holiday' union all
select '26 Dec 2016', 'Boxing Day' union all
select '27 Dec 2016', 'Christmas Day (substitute day)' union all
select '26 Dec 2017', 'Boxing Day' union all
select '25 Dec 2017', 'Christmas Day' union all
select '28 Aug 2017', 'Summer bank holiday' union all
select '29 May 2017', 'Spring bank holiday' union all
select '01 May 2017', 'Early May bank holiday' union all
select '17 Apr 2017', 'Easter Monday' union all
select '14 Apr 2017', 'Good Friday' union all
select '02 Jan 2017', 'New Year''s Day (substitute day)' union all
select '01 Jan 2018', 'New Year''s Day' union all
select '30 Mar 2018', 'Good Friday' union all
select '02 Apr 2018', 'Easter Monday' union all
select '07 May 2018', 'Early May bank holiday' union all
select '28 May 2018', 'Spring bank holiday' union all
select '27 Aug 2018', 'Summer bank holiday' union all
select '25 Dec 2018', 'Christmas Day' union all
select '26 Dec 2018', 'Boxing Day' union all
select '01 Jan 2019', 'New Year''s Day' union all
select '19 Apr 2019', 'Good Friday' union all
select '22 Apr 2019', 'Easter Monday' union all
select '06 May 2019', 'Early May bank holiday' union all
select '27 May 2019', 'Spring bank holiday' union all
select '26 Aug 2019', 'Summer bank holiday' union all
select '25 Dec 2019', 'Christmas Day' union all
select '26 Dec 2019', 'Boxing Day' union all
select '01 Jan 2020', 'New Year''s Day' union all
select '10 Apr 2020', 'Good Friday' union all
select '13 Apr 2020', 'Easter Monday' union all
select '08 May 2020', 'Early May bank holiday (moved from 4th May for VE day)' union all
select '25 May 2020', 'Spring bank holiday' union all
select '31 Aug 2020', 'Summer bank holiday' union all
select '25 Dec 2020', 'Christmas Day' union all
select '28 Dec 2020', 'Boxing Day' union all
select '01 Jan 2021', 'New Year''s Day' union all
select '02 Apr 2021', 'Good Friday' union all
select '05 Apr 2021', 'Easter Monday' union all
select '03 May 2021', 'Early May bank holiday' union all
select '31 May 2021', 'Spring bank holiday' union all
select '30 Aug 2021', 'Summer bank holiday' union all
select '27 Dec 2021', 'Christmas Day (substitute day)' union all
select '28 Dec 2021', 'Boxing Day (substitute day)'
go
select * from #UKHolidayDates