Re: Alternative to "Money" ... - Mailing list pgsql-admin

From Harald Fuchs
Subject Re: Alternative to "Money" ...
Date
Msg-id pur7xct9pb.fsf@srv.protecting.net
Whole thread Raw
In response to Re: Alternative to "Money" ...  ("Matt Clark" <matt@ymogen.net>)
Responses Re: Alternative to "Money" ...
List pgsql-admin
In article <20040203160813.81708.qmail@web13808.mail.yahoo.com>,
Chris Gamache <cgg007@yahoo.com> writes:

> That does make more sense (cents? :) ).

> View and rule still apply, tho. Better performance still?

> create temporary table new_money (product text, cents int4);

> create view v_new_money as select product, (cents::numeric/100)::numeric(10,2)
> as dollars from new_money;

> create rule v_new_money_upd as on update to v_new_money do instead update
> new_money set product=new.product, cents=new.dollars * 100 where product =
> old.product;

> create rule v_new_money_del as on delete to v_new_money do instead delete from
> new_money where product = old.product;

> create rule v_new_money_ins as on insert to v_new_money do instead insert into
> new_money (product, cents) values (new.product, new.dollars * 100);

> insert into new_money (product, cents) values ('Flowbee','1995');
> insert into new_money (product, cents) values ('Country Hits','995');
> insert into v_new_money (product, dollars) values ('ThighMaster','39.95');
> update v_new_money set dollars = '14.95' where product='Flowbee';

From where would you get this '14.95'?  From your application?  If
yes, what type is it?  A string or a float?  A string would be
inefficient (like SQLs NUMERIC), a float would not be exact (like SQLs
FLOAT).

pgsql-admin by date:

Previous
From: Chris Gamache
Date:
Subject: Re: Alternative to "Money" ...
Next
From: "Sally Sally"
Date:
Subject: How much extra free disk space does postgres need?