On Monday 07 May 2007 12:00 pm, Tom Lane wrote: > Adrian Klaver <aklaver@xxxxxxxxxxx> writes: > > With this setup you will have to use an explicit string- > > date_issued + INTERVAL term|| 'years'. This will involve constructing a > > string and passing it to INTERVAL. > > No, that's a truly awful way to do it. The correct way is to use number > times interval multiplication, eg > > date_issued + term * '1 year'::interval; > > This reduces to not much more than a floating-point multiply, whereas > the other way involves string-forming and string-parsing. Plus you > can easily use whatever multiplier you like, eg '7 days' if weeks > strike your fancy. > > It might be that converting those columns to interval is the best > answer, depending on what other processing needs to be done with them. > But if Rich wants to leave them as numbers, the above is the best way > to convert them to intervals on-the-fly. > > regards, tom lane Yea, I realized the error of my ways after hitting send. An ounce of proof reading prevents a pound of oops. -- Adrian Klaver aklaver@xxxxxxxxxxx