AW: [HACKERS] Re: Subselects open issue Nr. 5
Zeugswetter Andreas IZ5 <andreas.zeugswetter@telecom.at>
From: Zeugswetter Andreas SARZ <Andreas.Zeugswetter@telecom.at>
To: "'Vadim B. Mikheev'" <vadim@sable.krasnoyarsk.su>
Cc: "'pgsql-hackers@hub.org'" <pgsql-hackers@hub.org>
Date: 1998-02-16T13:19:14Z
Lists: pgsql-hackers
Guess what ! It (Informix 9.12 and DB/2 4.1) says syntax error (at the first comma). (Even looked up the Manuals) Haha Hihi Hoho. I guess you beat them here Vadim+Bruce+Tom. * hear the cork popping ? * Andreas PS.: from the logical point of view, I think all rows from x should qualify for a where (a,b) not in (empty set) because for me NULL is not an empty set, at least it is treated as a value in a unique index. On the other hand you could argue: the whole set is NULL so a not in () should filter where a not null. I guess no standard has thought about that so far. (Tom ?) Summary: I guess it is for us to decide. So I would do exactly as you said and return all except (NULL,NULL) Vadim B. Mikheev wrote: > Meskes, Michael wrote: > > > > Yes, and Oracle7 also. > > > > I think with NULL values Andreas is right. The whole statement should be > > NULLed. That to me is the intuitive behaviour. > > Not sure. > IMHO, any element, either with defined value or with undefined value > (NULL), > can't be contained by empty set. > > Hm, btw, just curious, what Informix returns for > > select * from taba where (a,b) not in (<a select returning no row>); > > having in taba tuples with (a,b) in > > (NULL, a_value) > (NULL, NULL) > > ? > Does it return all tuples except for (NULL,NULL) ? > > Vadim > >