aboutsummaryrefslogtreecommitdiff
path: root/test/join.test
diff options
context:
space:
mode:
Diffstat (limited to 'test/join.test')
-rw-r--r--test/join.test30
1 files changed, 30 insertions, 0 deletions
diff --git a/test/join.test b/test/join.test
index 38143c056..82dbd447f 100644
--- a/test/join.test
+++ b/test/join.test
@@ -762,7 +762,37 @@ do_execsql_test join-14.4 {
CREATE TABLE t1(c PRIMARY KEY, a TEXT(10000), b TEXT(10000));
SELECT * FROM (SELECT 111) LEFT JOIN (SELECT c+222 FROM t1) GROUP BY 1;
} {111 {}}
+do_execsql_test join-14.4b {
+ SELECT * FROM (SELECT 111) LEFT JOIN (SELECT c+222 FROM t1);
+} {111 {}}
do_execsql_test join-14.5 {
+ SELECT * FROM (SELECT 111 AS x UNION ALL SELECT 222)
+ LEFT JOIN (SELECT c+333 AS y FROM t1) ON x=y GROUP BY 1;
+} {111 {} 222 {}}
+do_execsql_test join-14.5b {
+ SELECT count(*)
+ FROM (SELECT 111 AS x UNION ALL SELECT 222)
+ LEFT JOIN (SELECT c+333 AS y FROM t1) ON x=y;
+} {2}
+do_execsql_test join-14.5c {
+ SELECT count(*)
+ FROM (SELECT c+333 AS y FROM t1)
+ RIGHT JOIN (SELECT 111 AS x UNION ALL SELECT 222) ON x=y;
+} {2}
+do_execsql_test join-14.6 {
+ SELECT * FROM (SELECT 111 AS x UNION ALL SELECT 111)
+ LEFT JOIN (SELECT c+333 AS y FROM t1) ON x=y GROUP BY 1;
+} {111 {}}
+do_execsql_test join-14.7 {
+ SELECT * FROM (SELECT 111 AS x UNION ALL SELECT 111 UNION ALL SELECT 222)
+ LEFT JOIN (SELECT c+333 AS y FROM t1) ON x=y GROUP BY 1;
+} {111 {} 222 {}}
+do_execsql_test join-14.8 {
+ INSERT INTO t1(c) VALUES(-111);
+ SELECT * FROM (SELECT 111 AS x UNION ALL SELECT 111 UNION ALL SELECT 222)
+ LEFT JOIN (SELECT c+333 AS y FROM t1) ON x=y GROUP BY 1;
+} {111 {} 222 222}
+do_execsql_test join-14.9 {
DROP TABLE IF EXISTS t1;
CREATE TABLE t1(c PRIMARY KEY) WITHOUT ROWID;
SELECT * FROM (SELECT 111) LEFT JOIN (SELECT c+222 FROM t1) GROUP BY 1;