1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150
|
# name: test/sql/projection/select_star_exclude.test
# description: SELECT * EXCLUDE
# group: [projection]
statement ok
PRAGMA enable_verification
statement ok
CREATE TABLE integers(i INTEGER, j INTEGER, k INTEGER)
statement ok
INSERT INTO integers VALUES (1, 2, 3)
query II
SELECT * EXCLUDE i FROM integers
----
2 3
query I
SELECT * EXCLUDE (i, j) FROM integers
----
3
query II
SELECT * EXCLUDE (j) FROM integers
----
1 3
query II
SELECT * EXCLUDE (j) FROM integers
----
1 3
# case insensitive exclude
query II
SELECT * EXCLUDE ("J") FROM integers
----
1 3
# no columns remaining...
statement error
SELECT * EXCLUDE (i, j, k) FROM integers
----
# same but with integers.*
query II
SELECT integers.* EXCLUDE (i) FROM integers
----
2 3
query II
SELECT integers.* EXCLUDE ('i') FROM integers
----
2 3
query I
SELECT integers.* EXCLUDE (i, j) FROM integers
----
3
query II
SELECT integers.* EXCLUDE (j) FROM integers
----
1 3
query III
SELECT integers.* EXCLUDE (i, j), * EXCLUDE (i, j), * EXCLUDE (i, k) FROM integers
----
3 3 2
statement error
SELECT integers.* EXCLUDE (i, j, k) FROM integers
----
# exclude but with multiple tables
query II
SELECT * EXCLUDE (i, j) FROM integers i1, integers i2
----
3 3
query I
SELECT i1.* EXCLUDE (i, j), i2.* EXCLUDE (i, j, k) FROM integers i1, integers i2
----
3
query III
SELECT i1.* EXCLUDE (i, j), i2.* EXCLUDE (k) FROM integers i1, integers i2
----
3 1 2
query IIII
SELECT * EXCLUDE (i) FROM integers i1 JOIN integers i2 USING (i)
----
2 3 2 3
# qualified exclude entries
query II
SELECT * EXCLUDE integers.i FROM integers
----
2 3
query I
SELECT * EXCLUDE (integers.i, integers.j) FROM integers
----
3
query I
SELECT integers.* EXCLUDE (integers.i, integers.j) FROM integers
----
3
query I
SELECT * EXCLUDE (INTEGERS.i, integers.J) FROM integers
----
3
statement error
SELECT * EXCLUDE (integers.i, integers.j, integers2.i) FROM integers
----
not found in FROM clause
statement error
SELECT * EXCLUDE (integers2.i) FROM integers
----
not found in FROM clause
query IIII
SELECT * EXCLUDE (i1.i, i2.i) FROM integers i1 JOIN integers i2 USING (i)
----
2 3 2 3
# duplicate entry in exclude list
statement error
SELECT * EXCLUDE (i, i) FROM integers
----
Duplicate entry
statement error
SELECT * EXCLUDE (integers.i, i) FROM integers
----
Duplicate entry
# column name that does not exist
statement error
SELECT * EXCLUDE (blabla) FROM integers
----
statement error
SELECT integers.* EXCLUDE (blabla) FROM integers
----
|