I have a list (in database) of weekday non-holiday dates that goes from present back to 1990. From this list, I'd like to pull out dates given different kinds of criteria and add them to an array. Examples of criteria are: - first day of the month for the most recent 5 years. Perhaps obvious, but the first weekday non-holiday of the month isn't necessarily day 1 (i.e. 5/1). - first day of the month and one week after first day of the month for the most recent 5 years. If one week after first day of the month isn't on the list, then I'd like the closest day thereafter. Any thoughts on how best to do this? Code snippets would be greatly appreciated.