I don't understand how this belongs to the thread "Request for comment: Proposed SQLite API changes".
Gerald On Fri, 4 Nov 2005 20:20:12 +0100 Marco Bambini <[EMAIL PROTECTED]> wrote: > If table_A has mutiple rows (say like) > > column1 column2 > 1 B > 2 H > 3 R > 4 Q > 5 V > > And table_B has > > column1 column2 > B > R > 3 H > Q > 5 V > > > If I do > > select column1 from table_A > > I get > 1 > 2 > 3 > 4 > 5 > > But if I do > SELECT * FROM TABLE_B where column1 = ( select column1 from table_A ) > > I get an empty set (which is good) > > If I do > update TABLE_B set column1 = ( select column1 from table_A ) > > I expexct to get an error since "select column1 from table_a" is > multivalued > But I dont. The update succeeds as though I wrote "update TABLE_B set > column1 = ( select column1 from table_A returning 1 row )" or something > Table_B is updated with the first result from the subselect. > > Table_B now has > > column1 column2 > 1 B > 1 R > 1 H > 1 Q > 1 V > > And now if I do > SELECT * FROM TABLE_B where column1 = ( select column1 from table_A ) > > I get all rows in table_B which again seems wrong since the subselect > IS multivalued > > It would make sense that the select worked if I wrote > SELECT * FROM TABLE_B where column1 IN ( select column1 from table_A ) > > Any idea? > > --- > Marco Bambini > >