Annotation of embedaddon/sqlite3/test/tkt2942.test, revision 1.1
1.1 ! misho 1: # 2008 February 15
! 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 #2942.
! 13: #
! 14: # Queries of the form:
! 15: #
! 16: # SELECT group_concat(x) FROM (SELECT * FROM table ORDER BY 1);
! 17: #
! 18: # The ORDER BY would be dropped by the query flattener. This used
! 19: # to not matter because aggregate functions sum(), min(), max(), avg(),
! 20: # and so forth give the same result regardless of the order of inputs.
! 21: # But with the addition of the group_concat() function, suddenly the
! 22: # order does matter.
! 23: #
! 24: # $Id: tkt2942.test,v 1.1 2008/02/15 14:33:04 drh Exp $
! 25: #
! 26:
! 27: set testdir [file dirname $argv0]
! 28: source $testdir/tester.tcl
! 29:
! 30: ifcapable !subquery {
! 31: finish_test
! 32: return
! 33: }
! 34:
! 35: do_test tkt2942.1 {
! 36: execsql {
! 37: create table t1(num int);
! 38: insert into t1 values (2);
! 39: insert into t1 values (1);
! 40: insert into t1 values (3);
! 41: insert into t1 values (4);
! 42: SELECT group_concat(num) FROM (SELECT num FROM t1 ORDER BY num DESC);
! 43: }
! 44: } {4,3,2,1}
! 45: do_test tkt2942.2 {
! 46: execsql {
! 47: SELECT group_concat(num) FROM (SELECT num FROM t1 ORDER BY num);
! 48: }
! 49: } {1,2,3,4}
! 50: do_test tkt2942.3 {
! 51: execsql {
! 52: SELECT group_concat(num) FROM (SELECT num FROM t1);
! 53: }
! 54: } {2,1,3,4}
! 55: do_test tkt2942.4 {
! 56: execsql {
! 57: SELECT group_concat(num) FROM (SELECT num FROM t1 ORDER BY rowid DESC);
! 58: }
! 59: } {4,3,1,2}
! 60:
! 61:
! 62: finish_test
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>