Thread: How I can get the real data type result instead of integer data type?
In a query, there is something like order by count(id)/age where both id and age are the integer data type. From a query result, I believe the operation count(id)/age yields a integer. I need it in real data type. After searchingthe online document, I haven't found any related information. Can someone help me out on this problem, please. Thanks, w -- _______________________________________________ Search for businesses by name, location, or phone number. -Lycos Yellow Pages http://r.lycos.com/r/yp_emailfooter/http://yellowpages.lycos.com/default.asp?SRC=lycos10
On Mon, 2006-03-20 at 21:10, Wei Wei wrote: > In a query, there is something like > > order by count(id)/age > > where both id and age are the integer data type. > > >From a query result, I believe the operation count(id)/age yields a integer. I need it in real data type. After searchingthe online document, I haven't found any related information. Can someone help me out on this problem, please. > > Thanks, > > w Try: order by count(id)/age::float regards, Sig.Gunn
Re: How I can get the real data type result instead of integer data type?
From
Bruno Wolff III
Date:
On Mon, Mar 20, 2006 at 13:10:51 -0800, Wei Wei <wei725@lycos.com> wrote: > In a query, there is something like > > order by count(id)/age > > where both id and age are the integer data type. > > From a query result, I believe the operation count(id)/age yields a integer. I need it in real data type. After searchingthe online document, I haven't found any related information. Can someone help me out on this problem, please. You can cast the expressions. Something like: order by count(id)::float/age::float
"Sigurdur Gunnlaugsson" <sig@fjolnet.net> > On Mon, 2006-03-20 at 21:10, Wei Wei wrote: > > Try: > > order by count(id)/age::float Or you can use the standard grammer: order by cast(count(id)/age as float) Regards, William ZHANG
On Tue, Mar 21, 2006 at 21:16:03 +0800, William ZHANG <uniware@zedware.org> wrote: > > "Sigurdur Gunnlaugsson" <sig@fjolnet.net> > > On Mon, 2006-03-20 at 21:10, Wei Wei wrote: > > > > Try: > > > > order by count(id)/age::float > > Or you can use the standard grammer: > > order by cast(count(id)/age as float) Don't you have to cast before the divide? I think the above will convert the truncated result to float. However he could do something like: order by count(id)/cast(age as float)
Bruno Wolff III <bruno@wolff.to> writes: >>> Try: >>> order by count(id)/age::float >> >> Or you can use the standard grammer: >> >> order by cast(count(id)/age as float) > Don't you have to cast before the divide? Yeah. The :: case is OK because :: binds more tightly than / but the second suggestion is wrong :-( regards, tom lane