1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-07-30 19:03:16 +03:00

Fix datatype reporting and collating sequence selection so that it works

correctly on views and with the UNION, EXCEPT, and INTERCEPT operators. (CVS 839)

FossilOrigin-Name: 71cc292dce59cf8224b205d1cdbff59ad12f1043
This commit is contained in:
drh
2003-01-18 20:11:05 +00:00
parent be4f31c226
commit fcb78a4900
13 changed files with 299 additions and 96 deletions

View File

@ -11,7 +11,7 @@
# This file implements regression tests for SQLite library. The
# focus of this file is testing the CREATE TABLE statement.
#
# $Id: sort.test,v 1.7 2002/08/26 19:55:11 drh Exp $
# $Id: sort.test,v 1.8 2003/01/18 20:11:07 drh Exp $
set testdir [file dirname $argv0]
source $testdir/tester.tcl
@ -267,4 +267,84 @@ do_test sort-6.4 {
}
} {4 1 6 5 3 2}
do_test sort-7.1 {
execsql {
CREATE TABLE t4(
a INTEGER,
b VARCHAR(30)
);
INSERT INTO t4 VALUES(1,1);
INSERT INTO t4 VALUES(2,2);
INSERT INTO t4 VALUES(11,11);
INSERT INTO t4 VALUES(12,12);
SELECT a FROM t4 ORDER BY 1;
}
} {1 2 11 12}
do_test sort-7.2 {
execsql {
SELECT b FROM t4 ORDER BY 1
}
} {1 11 12 2}
do_test sort-7.3 {
execsql {
CREATE VIEW v4 AS SELECT * FROM t4;
SELECT a FROM v4 ORDER BY 1;
}
} {1 2 11 12}
do_test sort-7.4 {
execsql {
SELECT b FROM v4 ORDER BY 1;
}
} {1 11 12 2}
do_test sort-7.5 {
execsql {
SELECT a FROM t4 UNION SELECT a FROM v4 ORDER BY 1;
}
} {1 2 11 12}
do_test sort-7.6 {
execsql {
SELECT b FROM t4 UNION SELECT a FROM v4 ORDER BY 1;
}
} {1 2 11 12}
do_test sort-7.7 {
execsql {
SELECT a FROM t4 UNION SELECT b FROM v4 ORDER BY 1;
}
} {1 2 11 12}
do_test sort-7.8 {
execsql {
SELECT b FROM t4 UNION SELECT b FROM v4 ORDER BY 1;
}
} {1 11 12 2}
do_test sort-7.9 {
execsql {
SELECT b FROM t4 UNION SELECT b FROM v4 ORDER BY 1 COLLATE numeric;
}
} {1 2 11 12}
do_test sort-7.10 {
execsql {
SELECT b FROM t4 UNION SELECT b FROM v4 ORDER BY 1 COLLATE integer;
}
} {1 2 11 12}
do_test sort-7.11 {
execsql {
SELECT b FROM t4 UNION SELECT b FROM v4 ORDER BY 1 COLLATE text;
}
} {1 11 12 2}
do_test sort-7.12 {
execsql {
SELECT b FROM t4 UNION SELECT b FROM v4 ORDER BY 1 COLLATE blob;
}
} {1 11 12 2}
do_test sort-7.13 {
execsql {
SELECT b FROM t4 UNION SELECT b FROM v4 ORDER BY 1 COLLATE clob;
}
} {1 11 12 2}
do_test sort-7.14 {
execsql {
SELECT b FROM t4 UNION SELECT b FROM v4 ORDER BY 1 COLLATE varchar;
}
} {1 11 12 2}
finish_test