Home | History | Annotate | Download | only in test
      1 # 2009 May 7
      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 # Ticket #3841
     13 #
     14 # The sqlite3_aggregate_count() is not being reset when an aggregate
     15 # functio is used in a correlated subquery.
     16 #
     17 set testdir [file dirname $argv0]
     18 source $testdir/tester.tcl
     19 
     20 ifcapable !subquery {
     21   finish_test
     22   return
     23 }
     24 
     25 do_test tkt3841.1 {
     26   execsql {
     27     CREATE TABLE table2 (key TEXT, x TEXT);
     28     CREATE TABLE list (key TEXT, value TEXT);
     29   
     30     INSERT INTO table2 VALUES ("a", "alist");
     31     INSERT INTO table2 VALUES ("b", "blist");
     32     INSERT INTO list VALUES ("a", 1);
     33     INSERT INTO list VALUES ("a", 2);
     34     INSERT INTO list VALUES ("a", 3);
     35     INSERT INTO list VALUES ("b", 4);
     36     INSERT INTO list VALUES ("b", 5);
     37     INSERT INTO list VALUES ("b", 6);
     38 
     39     SELECT
     40       table2.x,
     41       (SELECT group_concat(list.value)
     42         FROM list
     43         WHERE list.key = table2.key)
     44     FROM table2;
     45   }
     46 } {alist 1,2,3 blist 4,5,6}
     47 
     48 finish_test
     49