| From: | Jeff Janes <jeff(dot)janes(at)gmail(dot)com> |
|---|---|
| To: | Bill Moran <wmoran(at)potentialtech(dot)com> |
| Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Josh Berkus <josh(at)agliodbs(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Re: Why don't we accept exponential format for integers? |
| Date: | 2010-12-17 20:46:57 |
| Message-ID: | AANLkTimpid_-XS4aWeeNxzbaD=B59J4fuQ0sYQU-MiZH@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
On Fri, Dec 17, 2010 at 12:16 PM, Bill Moran <wmoran(at)potentialtech(dot)com> wrote:
> In response to Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>:
>
>> Josh Berkus <josh(at)agliodbs(dot)com> writes:
>> > postgres=# select '1e+01'::Integer
>> > postgres-# ;
>> > ERROR: invalid input syntax for integer: "1e+01"
>>
>> I have never heard of any programming system anywhere that accepts such
>> a syntax for integers (assuming it distinguishes integers from other
>> numbers at all). I'm not excited about being the first. Why does this
>> error surprise you? It doesn't seem particularly different from arguing
>> that 1.000 should be considered an integer, which strikes me as a
>> seriously bad idea.
>
> But
> SELECT 1.000::Integer;
> works. And so does
> SELECT 1.234::Integer;
And so does:
SELECT 1.23e+01::Integer
> which I find just as dangerous as
> SELECT '1.234e+01'::Integer;
Add quotes to either of the other two, and then they don't work either.
Cheers,
Jeff
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Bill Moran | 2010-12-17 20:49:25 | Re: Why don't we accept exponential format for integers? |
| Previous Message | Tom Lane | 2010-12-17 20:46:12 | Re: Why don't we accept exponential format for integers? |