| Index: third_party/sqlite/src/test/tkt3841.test
|
| diff --git a/third_party/sqlite/src/test/tkt3841.test b/third_party/sqlite/src/test/tkt3841.test
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..df6de5c2f3972689f6c8d722804506c3cead5476
|
| --- /dev/null
|
| +++ b/third_party/sqlite/src/test/tkt3841.test
|
| @@ -0,0 +1,48 @@
|
| +# 2009 May 7
|
| +#
|
| +# The author disclaims copyright to this source code. In place of
|
| +# a legal notice, here is a blessing:
|
| +#
|
| +# May you do good and not evil.
|
| +# May you find forgiveness for yourself and forgive others.
|
| +# May you share freely, never taking more than you give.
|
| +#
|
| +#***********************************************************************
|
| +#
|
| +# Ticket #3841
|
| +#
|
| +# The sqlite3_aggregate_count() is not being reset when an aggregate
|
| +# functio is used in a correlated subquery.
|
| +#
|
| +set testdir [file dirname $argv0]
|
| +source $testdir/tester.tcl
|
| +
|
| +ifcapable !subquery {
|
| + finish_test
|
| + return
|
| +}
|
| +
|
| +do_test tkt3841.1 {
|
| + execsql {
|
| + CREATE TABLE table2 (key TEXT, x TEXT);
|
| + CREATE TABLE list (key TEXT, value TEXT);
|
| +
|
| + INSERT INTO table2 VALUES ("a", "alist");
|
| + INSERT INTO table2 VALUES ("b", "blist");
|
| + INSERT INTO list VALUES ("a", 1);
|
| + INSERT INTO list VALUES ("a", 2);
|
| + INSERT INTO list VALUES ("a", 3);
|
| + INSERT INTO list VALUES ("b", 4);
|
| + INSERT INTO list VALUES ("b", 5);
|
| + INSERT INTO list VALUES ("b", 6);
|
| +
|
| + SELECT
|
| + table2.x,
|
| + (SELECT group_concat(list.value)
|
| + FROM list
|
| + WHERE list.key = table2.key)
|
| + FROM table2;
|
| + }
|
| +} {alist 1,2,3 blist 4,5,6}
|
| +
|
| +finish_test
|
|
|