• unknown's avatar
    WL#2486 - natural and using join according to SQL:2003 · fe24add7
    unknown authored
    * Provide backwards compatibility extension to name resolution of
      coalesced columns. The patch allows such columns to be qualified
      with a table (and db) name, as it is in 4.1.
      Based on a patch from Monty.
    
    * Adjusted tests accordingly to test both backwards compatible name
      resolution of qualified columns, and ANSI-style resolution of
      non-qualified columns.
      For this, each affected test has two versions - one with qualified
      columns, and one without. 
    
    
    mysql-test/include/ps_query.inc:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/r/bdb.result:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/r/innodb.result:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/r/join.result:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/r/join_nested.result:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/r/join_outer.result:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/r/null_key.result:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/r/order_by.result:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/r/ps_2myisam.result:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/r/ps_3innodb.result:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/r/ps_4heap.result:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/r/ps_5merge.result:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/r/ps_6bdb.result:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/r/ps_7ndb.result:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/r/select.result:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/r/subselect.result:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/r/type_ranges.result:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/t/bdb.test:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/t/innodb.test:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/t/join.test:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/t/join_nested.test:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/t/join_outer.test:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/t/null_key.test:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/t/order_by.test:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/t/select.test:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/t/subselect.test:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    mysql-test/t/type_ranges.test:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    sql/sql_base.cc:
      * Applied Monty's patch for backwards compatible name resolution
        of qualified columns. The idea is:
        - When a column is qualified, search for the column in all
          tables/views underlying each natural join. In this case
          natural joins are *not* considered leaves.
        - If a column is not qualified, then consider natural joins
          as leaves, thus directly search the result columns of
          natural joins.
      * Simplified 'find_field_in_tables()' - unified two similar
        loops into one.
    sql/table.cc:
      - Removed method & members not needed after Monty's patch.
    sql/table.h:
      - Removed method & members not needed after Monty's patch.
    tests/mysql_client_test.c:
      Put back old tests to test that coalesced columns of natural joins can be qualified.
    fe24add7
ps_4heap.result 102 KB