On Thu, Sep 3, 2015 at 5:14 AM, Atsushi Yoshida <rudeboy...@gmail.com>
wrote:

> Hi.
>
> I cought a strange result.
> I execute such query.
>
> > SELECT "attend"."lid", "attend"."status" FROM "attend" WHERE
> "attend"."sid" = 325 AND "attend"."lid" IN ('ABF0010', 'ABF0010',
> 'ABF0010', 'ABF0010', 'ABF0010', 'ABF0010', 'ABF0010', 'ABF0010',
> 'ABF0010', 'ABF0010', 'ABF0010', 'ABF0010', 'ABF0010', 'ABF0010',
> 'ABF0010', 'ABF0010', 'ABF0010', 'ABF0010', 'ABF0010', 'ABF0010',

...

> 'ABF0060', 'ABF0060', 'ABF0060', 'ABF0060', 'ABF0060', 'ABF0060',
> 'ABF0060', 'ABF0060', 'ABF0060', 'ABF0060', 'ABF0060', 'ABF0060',
> 'ABF0060', 'ABF0060', 'ABF0060', 'ABF0060');
>



>
> it return
>
> >    lid   | status
> > ---------+--------
> >  ABF0050 |      9
> >  ABF0040 |      9
> >  ABF0020 |      9
> >  ABF0010 |      9
> >  ABF0060 |      9
> > (5 rows)
>
> This IN condition to be unique and execute it like this.
>
> > arcvideo=> SELECT "attend"."lid", "attend"."status" FROM "attend" WHERE
> "attend"."sid" = 325 AND "attend"."lid" IN ('ABF0010', 'ABF0020',
> 'ABF0030', 'ABF0040', 'ABF0050', 'ABF0060’);
>
> It return
>
> >    lid   | status
> > ---------+--------
> >  ABF0010 |      9
> >  ABF0020 |      9
> >  ABF0030 |      9
> >  ABF0040 |      9
> >  ABF0050 |      9
> >  ABF0060 |      9
> > (6 rows)
>
> First query and second query are same meaning I think, but the result is
> different.
>

Can you give an "explain (analyze, buffers)"  for each query?  Maybe you
have a corrupted index, and one query uses the index and the other does not.

Cheers,

Jeff

Reply via email to