os/persistentdata/persistentstorage/sqlite3api/TEST/TclScript/tkt2339.test
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
     1 # 2007 May 6
     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 # $Id: tkt2339.test,v 1.2 2007/09/12 17:01:45 danielk1977 Exp $
    13 #
    14 
    15 set testdir [file dirname $argv0]
    16 source $testdir/tester.tcl
    17 
    18 ifcapable !subquery||!compound {
    19   finish_test
    20   return
    21 }
    22 
    23 do_test tkt2339.1 {
    24   execsql {
    25     create table t1(num int);
    26     insert into t1 values (1);
    27     insert into t1 values (2);
    28     insert into t1 values (3);
    29     insert into t1 values (4);
    30     
    31     create table t2(num int);
    32     insert into t2 values (11);
    33     insert into t2 values (12);
    34     insert into t2 values (13);
    35     insert into t2 values (14);
    36     
    37     SELECT * FROM (SELECT * FROM t1 ORDER BY num DESC LIMIT 2)
    38     UNION
    39     SELECT * FROM (SELECT * FROM t2 ORDER BY num DESC LIMIT 2)
    40   }
    41 } {3 4 13 14}
    42 do_test tkt2339.2 {
    43   execsql {
    44     SELECT * FROM (SELECT * FROM t1 ORDER BY num DESC LIMIT 2)
    45     UNION ALL
    46     SELECT * FROM (SELECT * FROM t2 ORDER BY num DESC LIMIT 2)
    47   }
    48 } {4 3 14 13}
    49 do_test tkt2339.3 {
    50   execsql {
    51     SELECT * FROM (SELECT * FROM t1 ORDER BY num DESC)
    52     UNION ALL
    53     SELECT * FROM (SELECT * FROM t2 ORDER BY num DESC LIMIT 2)
    54   }
    55 } {4 3 2 1 14 13}
    56 do_test tkt2339.4 {
    57   execsql {
    58     SELECT * FROM (SELECT * FROM t1 ORDER BY num DESC LIMIT 2)
    59     UNION ALL
    60     SELECT * FROM (SELECT * FROM t2 ORDER BY num DESC)
    61   }
    62 } {4 3 14 13 12 11}
    63 do_test tkt2339.5 {
    64   execsql {
    65     SELECT * FROM (SELECT * FROM t1 ORDER BY num DESC LIMIT 2)
    66     UNION
    67     SELECT * FROM (SELECT * FROM t2 ORDER BY num DESC)
    68   }
    69 } {3 4 11 12 13 14}
    70 do_test tkt2339.6 {
    71   execsql {
    72     SELECT * FROM (SELECT * FROM t1 ORDER BY num DESC LIMIT 2)
    73     EXCEPT
    74     SELECT * FROM (SELECT * FROM t2 ORDER BY num DESC)
    75   }
    76 } {3 4}
    77 do_test tkt2339.7 {
    78   execsql {
    79     SELECT * FROM (SELECT * FROM t1 LIMIT 2)
    80     UNION
    81     SELECT * FROM (SELECT * FROM t2 ORDER BY num DESC LIMIT 2)
    82   }
    83 } {1 2 13 14}
    84 do_test tkt2339.8 {
    85   execsql {
    86     SELECT * FROM (SELECT * FROM t1 LIMIT 2)
    87     UNION
    88     SELECT * FROM (SELECT * FROM t2 LIMIT 2)
    89   }
    90 } {1 2 11 12}
    91 do_test tkt2339.9 {
    92   execsql {
    93     SELECT * FROM (SELECT * FROM t1 ORDER BY num DESC LIMIT 2)
    94     UNION
    95     SELECT * FROM (SELECT * FROM t2 LIMIT 2)
    96   }
    97 } {3 4 11 12}
    98 
    99 
   100 finish_test