1. 30 Jan, 2007 1 commit
    • malff/marcsql@weblab.(none)'s avatar
      Bug#21904 (parser problem when using IN with a double "(())") · f5ad4eed
      malff/marcsql@weblab.(none) authored
      Before this fix, a IN predicate of the form: "IN (( subselect ))", with two
      parenthesis, would be evaluated as a single row subselect: if the subselect
      returns more that 1 row, the statement would fail.
      
      The SQL:2003 standard defines a special exception in the specification,
      and mandates that this particular form of IN predicate shall be equivalent
      to "IN ( subselect )", which involves a table subquery and works with more
      than 1 row.
      
      This fix implements "IN (( subselect ))", "IN ((( subselect )))" etc
      as per the SQL:2003 requirement.
      
      All the details related to the implementation of this change have been
      commented in the code, and the relevant sections of the SQL:2003 spec
      are given for reference, so they are not repeated here.
      
      Having access to the spec is a requirement to review in depth this patch.
      f5ad4eed
  2. 19 Dec, 2006 1 commit
  3. 12 Dec, 2006 2 commits
  4. 11 Dec, 2006 1 commit
  5. 04 Dec, 2006 3 commits
  6. 01 Dec, 2006 1 commit
  7. 29 Nov, 2006 12 commits
  8. 28 Nov, 2006 10 commits
  9. 27 Nov, 2006 9 commits