github.com/jdgcs/sqlite3@v1.12.1-0.20210908114423-bc5f96e4dd51/testdata/tcl/tkt3911.test (about)

     1  # 2009 June 11
     2  #
     3  # The author disclaims copyright to this source code.  In place of
     4  # a legal notice, here is a blessing:
     5  #
     6  #    May you do good and not evil.
     7  #    May you find forgiveness for yourself and forgive others.
     8  #    May you share freely, never taking more than you give.
     9  #
    10  #***********************************************************************
    11  #
    12  # Tests to verify ticket #3911 is fixed.
    13  #
    14  # $Id: tkt3911.test,v 1.1 2009/06/12 03:27:28 drh Exp $
    15  
    16  set testdir [file dirname $argv0]
    17  source $testdir/tester.tcl
    18  
    19  do_test tkt3911.1 {
    20    execsql {
    21      CREATE TABLE t1(a,b);
    22      INSERT INTO t1 VALUES(1,2);
    23      INSERT INTO t1 VALUES(11,12);
    24  
    25      CREATE TABLE t2(b,c);
    26      INSERT INTO t2 VALUES(2,3);
    27      INSERT INTO t2 VALUES(22,23);
    28  
    29      SELECT * FROM t1 JOIN t2 USING(b);
    30    }
    31  } {1 2 3}
    32  do_test tkt3911.2 {
    33    db eval {
    34      SELECT * FROM t1 JOIN (t2) AS x USING (b);
    35    }
    36  } {1 2 3}
    37  do_test tkt3911.3 {
    38    db eval {
    39      SELECT * FROM t1 JOIN (SELECT * FROM t2) AS x USING (b);
    40    }
    41  } {1 2 3}
    42  
    43  do_test tkt3911.4 {
    44    db eval {
    45      CREATE TABLE t3(m,a);
    46      INSERT INTO t3 VALUES('one',1);
    47      INSERT INTO t3 VALUES('two',2);
    48  
    49      SELECT * FROM t3 JOIN (SELECT * FROM t1 NATURAL JOIN t2) AS x USING(a);
    50    }
    51  } {one 1 2 3}
    52  do_test tkt3911.5 {
    53    db eval {
    54      SELECT * FROM t3 JOIN (SELECT * FROM t1 JOIN t2 USING (b)) AS x USING(a);
    55    }
    56  } {one 1 2 3}
    57  
    58  finish_test