On Fri, 29 Mar 2013 12:02:49 -0700
Jeff Davis <pgsql@j-davis.com> wrote:
> On Thu, 2013-03-28 at 23:43 +1100, Gavan Schneider wrote:
> > If the money type is meant to be serious then these
> > conventions need to be followed/settable on a column by column
> > basis.
>
> I don't like the idea of tying the semantics to a column. That leaves
> out values that aren't stored in a column, e.g. literals or the
> results of some expression.
OK, I hadn't though of that but now that I am..
How would this be an issue? If you are assigning a literal to a column
then that's no issue. Otherwise, a literal is simply a value that can
be cast depending on the situation. The money type is no different in
that regard.
As a result of an expression, it will have the type of the data in the
expression. What if the result is the addition of two columns of
different precisions? Pick the higher precision? Forbid the
operation? The latter may make sense. How can you add Yen and US$?
--
D'Arcy J.M. Cain <darcy@druid.net> | Democracy is three wolves
http://www.druid.net/darcy/ | and a sheep voting on
+1 416 788 2246 (DoD#0082) (eNTP) | what's for dinner.
IM: darcy@Vex.Net, VOIP: sip:darcy@Vex.Net