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 59