Dates/Times in SQL are a complex topic, deserving of a category of their own. They're also fantastically powerful, making it easier to work with variable-length concepts like 'months' than many programming languages.

Before getting started on this category, it's probably worth taking a look over the PostgreSQL docs page on date/time functions. You might also want to complete the aggregate functions category, since we'll use some of those capabilities in this section.

- Produce a timestamp for 1 a.m. on the 31st of August 2012
- Subtract timestamps from each other
- Generate a list of all the dates in October 2012
- Get the day of the month from a timestamp
- Work out the number of seconds between timestamps
- Work out the number of days in each month of 2012
- Work out the number of days remaining in the month
- Work out the end time of bookings
- Return a count of bookings for each month
- Work out the utilisation percentage for each facility by month