Question: [Apparently](http://wiki.postgresql.org/wiki/Working_with_Dates_and_Times_in_PostgreSQL), PostgreSQL doesn't have `DATEADD`, because you can just use the `+` or `-` operators.

I need to add a number of hours to a date, which is accomplished like this:

```
date_field + interval '8.25 hour' 

```

Which is great, but I need the number of hours to come from a field in the table. Would be something like this:

```
date_field + interval start_time 'hour' 

```

I can't find anywhere how to do this. Is this actually impossible?

I don't mind resorting to ugly hacks like taking the field value and dividing by 3600, multiplying by 86400. Whatever I need to do, but I haven't found any way to do that either.

Answer: 
Since you want to add *hours*, it should rather be:

```
SELECT date_field + interval '1 hour' * start_time

```

`start_time` can be any numerical value.  

`'1 hour'` can be shortened to `'1h'`.  

[`interval` can be multiplied by a scalar.](https://www.postgresql.org/docs/current/functions-datetime.html#OPERATORS-DATETIME-TABLE)
The one worked for me is

```
SELECT date_field + interval '1' HOUR * start_time

```

**start\_time** can be any numerical value.