Re: Arbitrary precision arithmatic with pgsql
От | Rajesh Kumar Mallah |
---|---|
Тема | Re: Arbitrary precision arithmatic with pgsql |
Дата | |
Msg-id | 4134710D.70501@trade-india.com обсуждение исходный текст |
Ответ на | Re: Arbitrary precision arithmatic with pgsql (Michael Glaesemann <grzm@myrealbox.com>) |
Список | pgsql-sql |
Michael Glaesemann wrote: > > On Aug 31, 2004, at 8:55 PM, Rajesh Kumar Mallah wrote: > >> The docs says that numeric type supports numbers upto >> any precision > > > <snip /> > >> However >> >> tradein_clients=# SELECT cast(2^100 as numeric); > > > <snip /> > >> 1. Does the specs not require pgsql to print a warning or info , >> will it not be considered silient truncation of data. > > > AFAICS, the issue here is not the cast per se, but rather the power > operation (2^100), which expects a double precision argument. This > operation happens before the cast. Looks like the power operation of numeric ie, numeric ^ numeric already exists but it returns a double precision and the accuracy is getting lost. Shud numeric ^ numeric not be returning numeric instead? Regds mallah. tradein_clients=# CREATE TABLE t_a as SELECT 1::numeric ^ 1::numeric as col; SELECT tradein_clients=# \d t_a Table "public.t_a" +--------+------------------+-----------+ | Column | Type | Modifiers | +--------+------------------+-----------+ | col | double precision | | +--------+------------------+-----------+ > >> 2. Is there any way to do such calculation using pgsql, i understand >> bc is a better tool for it. > > > What you need is a power operation for numeric, which I think you'd > have to write yourself, possibly leveraging one of the procedural > languages (perhaps pl/perl) to access such an operation (as you > yourself mentioned). I'm sure you could find an algorithm to port to > PL/pgsql as well. > > Hope this helps. > > Michael Glaesemann > grzm myrealbox com > > > !DSPAM:41346ebe315451222497446! > > -- regds Mallah. Rajesh Kumar Mallah +---------------------------------------------------+ | Tradeindia.com (3,11,246) Registered Users | | Indias' Leading B2B eMarketPlace | | http://www.tradeindia.com/ | +---------------------------------------------------+
В списке pgsql-sql по дате отправления: