From: | Ron <ronljohnsonjr(at)gmail(dot)com> |
---|---|
To: | pgsql-general(at)lists(dot)postgresql(dot)org |
Subject: | Re: Is this a bug ? |
Date: | 2019-10-23 15:55:35 |
Message-ID: | 9df3ba0d-974d-f13d-ec91-bc22c3ab362b@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On 10/23/19 10:51 AM, Geoff Winkless wrote:
> On Wed, 23 Oct 2019 at 16:42, Ravi Krishna <sr_krishna(at)aol(dot)com> wrote:
>
>> select count(*) from bugtest where fld1 in ('a','b','c'
>> 'd','e');
>>
>> Note the missing comma after 'c'.
>>
>> PG takes it a syntactically right SQL and gives 3 as output.
>>
>> In SQLServer it errors out SQL Error [102] [S0001]: Incorrect syntax near 'd'.
>>
>> Can't believe this bug was never found before. We ended up wasting lot of time to figure this out.
> Simplify:
>
> select 'a'
> db-# 'b';
> ?column?
> ----------
> ab
> (1 row)
>
> This is not a bug.
>
> https://www.postgresql.org/docs/9.2/sql-syntax-lexical.html
>
> Two string constants that are only separated by whitespace with at
> least one newline are concatenated and effectively treated as if the
> string had been written as one constant.
Then -- since the 'e' is separated from 'd' by a comma, the result should be
"4", not "3".
No doubt: it's a bug, no matter what the Pg devs say.
--
Angular momentum makes the world go 'round.
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2019-10-23 16:00:14 | Re: Is this a bug ? |
Previous Message | Ravi Krishna | 2019-10-23 15:53:56 | Re: Is this a bug ? |