> Hi,
>
> This SQL returns 2533 records, none of which contain B."Kod" starting 
> with 1711 or 2111 (checked thoroughly):
> select B.*
> from "Branschkod" B
> inner join "Branschkod" B2 on B2."Namn" = B."Namn"
> where B."ECO_ID" <> B2."ECO_ID"
>
> Now, I add a line to the WHERE:
> select B.*
> from "Branschkod" B
> inner join "Branschkod" B2 on B2."Namn" = B."Namn"
> where B."ECO_ID" <> B2."ECO_ID"
> and B."Kod" in ('17111', '17112', '17113', '21111', '21112', '21113')
>
> This select DOES return six records, containing B."Kod" starting with
> 1711 or 2111 (one for each code in the list).
>
> How can this happen?

Maybe an index is damaged? See if the two queries use different plans and 
recreate any index that is used in the first plan and not in the second (I 
assume the six records exist, and that it is the 2533 records that should be at 
least 2539 records).

HTH,
Set

Reply via email to