From: | Gavan Schneider <pg-gts(at)snkmail(dot)com> |
---|---|
To: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: Cast double precision to integer & check for overflow |
Date: | 2013-01-26 23:35:18 |
Message-ID: | 3610-1359243322-692448@sneakemail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Saturday, January 26, 2013 at 08:13, Ian Pilcher wrote:
>I need to cast a double precision into an integer, and I want to check
>that the value will actually fit (modulo rounding).
>
>Coming from a C/Java background, this seems like something that should
>be utterly trivial. In my searching, however, I can't seem to find any
>SQL equivalent of INT_MAX, Integer.MAX_VALUE, etc.
>
So far I haven't seen such defined constants but am happy to
share the RTFM moment. :-)
I am sure you have already found this:
<http://www.postgresql.org/docs/9.2/static/datatype-numeric.html#DATATYPE-NUMERIC-TABLE>
>Do I have to hard-code this value?
>
Or cast double to both numeric(13000,0) and integer and compare
them. A stored function could encapsulate this along with
raising the exception when required. If design is still fluid
and performance allows the numeric type could do the job without
fear of overflow.
>(And yes, I do feel stupid having to ask this question here.)
>
If in doubt the Novice list is designed for those questions
where feelings of impending stupidity lurk.
Regards
Gavan Schneider (who considers himself a novice)
From | Date | Subject | |
---|---|---|---|
Next Message | Adrian Klaver | 2013-01-26 23:57:09 | Re: Cast double precision to integer & check for overflow |
Previous Message | Ian Pilcher | 2013-01-26 23:09:47 | Re: Cast double precision to integer & check for overflow |