1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/os/persistentdata/persistentstorage/sqlite3api/TEST/TclScript/tkt1473.test Fri Jun 15 03:10:57 2012 +0200
1.3 @@ -0,0 +1,728 @@
1.4 +# 2005 September 19
1.5 +#
1.6 +# The author disclaims copyright to this source code. In place of
1.7 +# a legal notice, here is a blessing:
1.8 +#
1.9 +# May you do good and not evil.
1.10 +# May you find forgiveness for yourself and forgive others.
1.11 +# May you share freely, never taking more than you give.
1.12 +#
1.13 +#***********************************************************************
1.14 +# This file implements regression tests for SQLite library.
1.15 +#
1.16 +# This file implements tests to verify that ticket #1473 has been
1.17 +# fixed.
1.18 +#
1.19 +
1.20 +set testdir [file dirname $argv0]
1.21 +source $testdir/tester.tcl
1.22 +
1.23 +ifcapable !compound {
1.24 + finish_test
1.25 + return
1.26 +}
1.27 +
1.28 +do_test tkt1473-1.1 {
1.29 + execsql {
1.30 + CREATE TABLE t1(a,b);
1.31 + INSERT INTO t1 VALUES(1,2);
1.32 + INSERT INTO t1 VALUES(3,4);
1.33 + SELECT * FROM t1
1.34 + }
1.35 +} {1 2 3 4}
1.36 +
1.37 +do_test tkt1473-1.2 {
1.38 + execsql {
1.39 + SELECT 1 FROM t1 WHERE a=1 UNION ALL SELECT 2 FROM t1 WHERE b=0
1.40 + }
1.41 +} {1}
1.42 +do_test tkt1473-1.3 {
1.43 + execsql {
1.44 + SELECT 1 FROM t1 WHERE a=1 UNION SELECT 2 FROM t1 WHERE b=0
1.45 + }
1.46 +} {1}
1.47 +do_test tkt1473-1.4 {
1.48 + execsql {
1.49 + SELECT 1 FROM t1 WHERE a=1 UNION ALL SELECT 2 FROM t1 WHERE b=4
1.50 + }
1.51 +} {1 2}
1.52 +do_test tkt1473-1.5 {
1.53 + execsql {
1.54 + SELECT 1 FROM t1 WHERE a=1 UNION SELECT 2 FROM t1 WHERE b=4
1.55 + }
1.56 +} {1 2}
1.57 +do_test tkt1473-1.6 {
1.58 + execsql {
1.59 + SELECT 1 FROM t1 WHERE a=0 UNION ALL SELECT 2 FROM t1 WHERE b=4
1.60 + }
1.61 +} {2}
1.62 +do_test tkt1473-1.7 {
1.63 + execsql {
1.64 + SELECT 1 FROM t1 WHERE a=0 UNION SELECT 2 FROM t1 WHERE b=4
1.65 + }
1.66 +} {2}
1.67 +do_test tkt1473-1.8 {
1.68 + execsql {
1.69 + SELECT 1 FROM t1 WHERE a=0 UNION ALL SELECT 2 FROM t1 WHERE b=0
1.70 + }
1.71 +} {}
1.72 +do_test tkt1473-1.9 {
1.73 + execsql {
1.74 + SELECT 1 FROM t1 WHERE a=0 UNION SELECT 2 FROM t1 WHERE b=0
1.75 + }
1.76 +} {}
1.77 +
1.78 +# Everything from this point on depends on sub-queries. So skip it
1.79 +# if sub-queries are not available.
1.80 +ifcapable !subquery {
1.81 + finish_test
1.82 + return
1.83 +}
1.84 +
1.85 +do_test tkt1473-2.2 {
1.86 + execsql {
1.87 + SELECT (SELECT 1 FROM t1 WHERE a=1 UNION ALL SELECT 2 FROM t1 WHERE b=0)
1.88 + }
1.89 +} {1}
1.90 +do_test tkt1473-2.3 {
1.91 + execsql {
1.92 + SELECT (SELECT 1 FROM t1 WHERE a=1 UNION SELECT 2 FROM t1 WHERE b=0)
1.93 + }
1.94 +} {1}
1.95 +do_test tkt1473-2.4 {
1.96 + execsql {
1.97 + SELECT (SELECT 1 FROM t1 WHERE a=1 UNION ALL SELECT 2 FROM t1 WHERE b=4)
1.98 + }
1.99 +} {1}
1.100 +do_test tkt1473-2.5 {
1.101 + execsql {
1.102 + SELECT (SELECT 1 FROM t1 WHERE a=1 UNION SELECT 2 FROM t1 WHERE b=4)
1.103 + }
1.104 +} {1}
1.105 +do_test tkt1473-2.6 {
1.106 + execsql {
1.107 + SELECT (SELECT 1 FROM t1 WHERE a=0 UNION ALL SELECT 2 FROM t1 WHERE b=4)
1.108 + }
1.109 +} {2}
1.110 +do_test tkt1473-2.7 {
1.111 + execsql {
1.112 + SELECT (SELECT 1 FROM t1 WHERE a=0 UNION SELECT 2 FROM t1 WHERE b=4)
1.113 + }
1.114 +} {2}
1.115 +do_test tkt1473-2.8 {
1.116 + execsql {
1.117 + SELECT (SELECT 1 FROM t1 WHERE a=0 UNION ALL SELECT 2 FROM t1 WHERE b=0)
1.118 + }
1.119 +} {{}}
1.120 +do_test tkt1473-2.9 {
1.121 + execsql {
1.122 + SELECT (SELECT 1 FROM t1 WHERE a=0 UNION SELECT 2 FROM t1 WHERE b=0)
1.123 + }
1.124 +} {{}}
1.125 +
1.126 +do_test tkt1473-3.2 {
1.127 + execsql {
1.128 + SELECT EXISTS
1.129 + (SELECT 1 FROM t1 WHERE a=1 UNION ALL SELECT 2 FROM t1 WHERE b=0)
1.130 + }
1.131 +} {1}
1.132 +do_test tkt1473-3.3 {
1.133 + execsql {
1.134 + SELECT EXISTS
1.135 + (SELECT 1 FROM t1 WHERE a=1 UNION SELECT 2 FROM t1 WHERE b=0)
1.136 + }
1.137 +} {1}
1.138 +do_test tkt1473-3.4 {
1.139 + execsql {
1.140 + SELECT EXISTS
1.141 + (SELECT 1 FROM t1 WHERE a=1 UNION ALL SELECT 2 FROM t1 WHERE b=4)
1.142 + }
1.143 +} {1}
1.144 +do_test tkt1473-3.5 {
1.145 + execsql {
1.146 + SELECT EXISTS
1.147 + (SELECT 1 FROM t1 WHERE a=1 UNION SELECT 2 FROM t1 WHERE b=4)
1.148 + }
1.149 +} {1}
1.150 +do_test tkt1473-3.6 {
1.151 + execsql {
1.152 + SELECT EXISTS
1.153 + (SELECT 1 FROM t1 WHERE a=0 UNION ALL SELECT 2 FROM t1 WHERE b=4)
1.154 + }
1.155 +} {1}
1.156 +do_test tkt1473-3.7 {
1.157 + execsql {
1.158 + SELECT EXISTS
1.159 + (SELECT 1 FROM t1 WHERE a=0 UNION SELECT 2 FROM t1 WHERE b=4)
1.160 + }
1.161 +} {1}
1.162 +do_test tkt1473-3.8 {
1.163 + execsql {
1.164 + SELECT EXISTS
1.165 + (SELECT 1 FROM t1 WHERE a=0 UNION ALL SELECT 2 FROM t1 WHERE b=0)
1.166 + }
1.167 +} {0}
1.168 +do_test tkt1473-3.9 {
1.169 + execsql {
1.170 + SELECT EXISTS
1.171 + (SELECT 1 FROM t1 WHERE a=0 UNION SELECT 2 FROM t1 WHERE b=0)
1.172 + }
1.173 +} {0}
1.174 +
1.175 +do_test tkt1473-4.1 {
1.176 + execsql {
1.177 + CREATE TABLE t2(x,y);
1.178 + INSERT INTO t2 VALUES(1,2);
1.179 + INSERT INTO t2 SELECT x+2, y+2 FROM t2;
1.180 + INSERT INTO t2 SELECT x+4, y+4 FROM t2;
1.181 + INSERT INTO t2 SELECT x+8, y+8 FROM t2;
1.182 + INSERT INTO t2 SELECT x+16, y+16 FROM t2;
1.183 + INSERT INTO t2 SELECT x+32, y+32 FROM t2;
1.184 + INSERT INTO t2 SELECT x+64, y+64 FROM t2;
1.185 + SELECT count(*), sum(x), sum(y) FROM t2;
1.186 + }
1.187 +} {64 4096 4160}
1.188 +do_test tkt1473-4.2 {
1.189 + execsql {
1.190 + SELECT 1 FROM t2 WHERE x=0
1.191 + UNION ALL
1.192 + SELECT 2 FROM t2 WHERE x=1
1.193 + UNION ALL
1.194 + SELECT 3 FROM t2 WHERE x=2
1.195 + UNION ALL
1.196 + SELECT 4 FROM t2 WHERE x=3
1.197 + UNION ALL
1.198 + SELECT 5 FROM t2 WHERE x=4
1.199 + UNION ALL
1.200 + SELECT 6 FROM t2 WHERE y=0
1.201 + UNION ALL
1.202 + SELECT 7 FROM t2 WHERE y=1
1.203 + UNION ALL
1.204 + SELECT 8 FROM t2 WHERE y=2
1.205 + UNION ALL
1.206 + SELECT 9 FROM t2 WHERE y=3
1.207 + UNION ALL
1.208 + SELECT 10 FROM t2 WHERE y=4
1.209 + }
1.210 +} {2 4 8 10}
1.211 +do_test tkt1473-4.3 {
1.212 + execsql {
1.213 + SELECT (
1.214 + SELECT 1 FROM t2 WHERE x=0
1.215 + UNION ALL
1.216 + SELECT 2 FROM t2 WHERE x=1
1.217 + UNION ALL
1.218 + SELECT 3 FROM t2 WHERE x=2
1.219 + UNION ALL
1.220 + SELECT 4 FROM t2 WHERE x=3
1.221 + UNION ALL
1.222 + SELECT 5 FROM t2 WHERE x=4
1.223 + UNION ALL
1.224 + SELECT 6 FROM t2 WHERE y=0
1.225 + UNION ALL
1.226 + SELECT 7 FROM t2 WHERE y=1
1.227 + UNION ALL
1.228 + SELECT 8 FROM t2 WHERE y=2
1.229 + UNION ALL
1.230 + SELECT 9 FROM t2 WHERE y=3
1.231 + UNION ALL
1.232 + SELECT 10 FROM t2 WHERE y=4
1.233 + )
1.234 + }
1.235 +} {2}
1.236 +do_test tkt1473-4.4 {
1.237 + execsql {
1.238 + SELECT (
1.239 + SELECT 1 FROM t2 WHERE x=0
1.240 + UNION ALL
1.241 + SELECT 2 FROM t2 WHERE x=-1
1.242 + UNION ALL
1.243 + SELECT 3 FROM t2 WHERE x=2
1.244 + UNION ALL
1.245 + SELECT 4 FROM t2 WHERE x=3
1.246 + UNION ALL
1.247 + SELECT 5 FROM t2 WHERE x=4
1.248 + UNION ALL
1.249 + SELECT 6 FROM t2 WHERE y=0
1.250 + UNION ALL
1.251 + SELECT 7 FROM t2 WHERE y=1
1.252 + UNION ALL
1.253 + SELECT 8 FROM t2 WHERE y=2
1.254 + UNION ALL
1.255 + SELECT 9 FROM t2 WHERE y=3
1.256 + UNION ALL
1.257 + SELECT 10 FROM t2 WHERE y=4
1.258 + )
1.259 + }
1.260 +} {4}
1.261 +do_test tkt1473-4.5 {
1.262 + execsql {
1.263 + SELECT (
1.264 + SELECT 1 FROM t2 WHERE x=0
1.265 + UNION ALL
1.266 + SELECT 2 FROM t2 WHERE x=-1
1.267 + UNION ALL
1.268 + SELECT 3 FROM t2 WHERE x=2
1.269 + UNION ALL
1.270 + SELECT 4 FROM t2 WHERE x=-1
1.271 + UNION ALL
1.272 + SELECT 5 FROM t2 WHERE x=4
1.273 + UNION ALL
1.274 + SELECT 6 FROM t2 WHERE y=0
1.275 + UNION ALL
1.276 + SELECT 7 FROM t2 WHERE y=1
1.277 + UNION ALL
1.278 + SELECT 8 FROM t2 WHERE y=2
1.279 + UNION ALL
1.280 + SELECT 9 FROM t2 WHERE y=3
1.281 + UNION ALL
1.282 + SELECT 10 FROM t2 WHERE y=-4
1.283 + )
1.284 + }
1.285 +} {8}
1.286 +do_test tkt1473-4.6 {
1.287 + execsql {
1.288 + SELECT (
1.289 + SELECT 1 FROM t2 WHERE x=0
1.290 + UNION ALL
1.291 + SELECT 2 FROM t2 WHERE x=-1
1.292 + UNION ALL
1.293 + SELECT 3 FROM t2 WHERE x=2
1.294 + UNION ALL
1.295 + SELECT 4 FROM t2 WHERE x=-2
1.296 + UNION ALL
1.297 + SELECT 5 FROM t2 WHERE x=4
1.298 + UNION ALL
1.299 + SELECT 6 FROM t2 WHERE y=0
1.300 + UNION ALL
1.301 + SELECT 7 FROM t2 WHERE y=1
1.302 + UNION ALL
1.303 + SELECT 8 FROM t2 WHERE y=-3
1.304 + UNION ALL
1.305 + SELECT 9 FROM t2 WHERE y=3
1.306 + UNION ALL
1.307 + SELECT 10 FROM t2 WHERE y=4
1.308 + )
1.309 + }
1.310 +} {10}
1.311 +do_test tkt1473-4.7 {
1.312 + execsql {
1.313 + SELECT (
1.314 + SELECT 1 FROM t2 WHERE x=0
1.315 + UNION ALL
1.316 + SELECT 2 FROM t2 WHERE x=-1
1.317 + UNION ALL
1.318 + SELECT 3 FROM t2 WHERE x=2
1.319 + UNION ALL
1.320 + SELECT 4 FROM t2 WHERE x=-2
1.321 + UNION ALL
1.322 + SELECT 5 FROM t2 WHERE x=4
1.323 + UNION ALL
1.324 + SELECT 6 FROM t2 WHERE y=0
1.325 + UNION ALL
1.326 + SELECT 7 FROM t2 WHERE y=1
1.327 + UNION ALL
1.328 + SELECT 8 FROM t2 WHERE y=-3
1.329 + UNION ALL
1.330 + SELECT 9 FROM t2 WHERE y=3
1.331 + UNION ALL
1.332 + SELECT 10 FROM t2 WHERE y=-4
1.333 + )
1.334 + }
1.335 +} {{}}
1.336 +
1.337 +do_test tkt1473-5.3 {
1.338 + execsql {
1.339 + SELECT EXISTS (
1.340 + SELECT 1 FROM t2 WHERE x=0
1.341 + UNION ALL
1.342 + SELECT 2 FROM t2 WHERE x=1
1.343 + UNION ALL
1.344 + SELECT 3 FROM t2 WHERE x=2
1.345 + UNION ALL
1.346 + SELECT 4 FROM t2 WHERE x=3
1.347 + UNION ALL
1.348 + SELECT 5 FROM t2 WHERE x=4
1.349 + UNION ALL
1.350 + SELECT 6 FROM t2 WHERE y=0
1.351 + UNION ALL
1.352 + SELECT 7 FROM t2 WHERE y=1
1.353 + UNION ALL
1.354 + SELECT 8 FROM t2 WHERE y=2
1.355 + UNION ALL
1.356 + SELECT 9 FROM t2 WHERE y=3
1.357 + UNION ALL
1.358 + SELECT 10 FROM t2 WHERE y=4
1.359 + )
1.360 + }
1.361 +} {1}
1.362 +do_test tkt1473-5.4 {
1.363 + execsql {
1.364 + SELECT EXISTS (
1.365 + SELECT 1 FROM t2 WHERE x=0
1.366 + UNION ALL
1.367 + SELECT 2 FROM t2 WHERE x=-1
1.368 + UNION ALL
1.369 + SELECT 3 FROM t2 WHERE x=2
1.370 + UNION ALL
1.371 + SELECT 4 FROM t2 WHERE x=3
1.372 + UNION ALL
1.373 + SELECT 5 FROM t2 WHERE x=4
1.374 + UNION ALL
1.375 + SELECT 6 FROM t2 WHERE y=0
1.376 + UNION ALL
1.377 + SELECT 7 FROM t2 WHERE y=1
1.378 + UNION ALL
1.379 + SELECT 8 FROM t2 WHERE y=2
1.380 + UNION ALL
1.381 + SELECT 9 FROM t2 WHERE y=3
1.382 + UNION ALL
1.383 + SELECT 10 FROM t2 WHERE y=4
1.384 + )
1.385 + }
1.386 +} {1}
1.387 +
1.388 +do_test tkt1473-5.5 {
1.389 + execsql {
1.390 + SELECT EXISTS (
1.391 + SELECT 1 FROM t2 WHERE x=0
1.392 + UNION ALL
1.393 + SELECT 2 FROM t2 WHERE x=-1
1.394 + UNION ALL
1.395 + SELECT 3 FROM t2 WHERE x=2
1.396 + UNION ALL
1.397 + SELECT 4 FROM t2 WHERE x=-1
1.398 + UNION ALL
1.399 + SELECT 5 FROM t2 WHERE x=4
1.400 + UNION ALL
1.401 + SELECT 6 FROM t2 WHERE y=0
1.402 + UNION ALL
1.403 + SELECT 7 FROM t2 WHERE y=1
1.404 + UNION ALL
1.405 + SELECT 8 FROM t2 WHERE y=2
1.406 + UNION ALL
1.407 + SELECT 9 FROM t2 WHERE y=3
1.408 + UNION ALL
1.409 + SELECT 10 FROM t2 WHERE y=-4
1.410 + )
1.411 + }
1.412 +} {1}
1.413 +do_test tkt1473-5.6 {
1.414 + execsql {
1.415 + SELECT EXISTS (
1.416 + SELECT 1 FROM t2 WHERE x=0
1.417 + UNION ALL
1.418 + SELECT 2 FROM t2 WHERE x=-1
1.419 + UNION ALL
1.420 + SELECT 3 FROM t2 WHERE x=2
1.421 + UNION ALL
1.422 + SELECT 4 FROM t2 WHERE x=-2
1.423 + UNION ALL
1.424 + SELECT 5 FROM t2 WHERE x=4
1.425 + UNION ALL
1.426 + SELECT 6 FROM t2 WHERE y=0
1.427 + UNION ALL
1.428 + SELECT 7 FROM t2 WHERE y=1
1.429 + UNION ALL
1.430 + SELECT 8 FROM t2 WHERE y=-3
1.431 + UNION ALL
1.432 + SELECT 9 FROM t2 WHERE y=3
1.433 + UNION ALL
1.434 + SELECT 10 FROM t2 WHERE y=4
1.435 + )
1.436 + }
1.437 +} {1}
1.438 +do_test tkt1473-5.7 {
1.439 + execsql {
1.440 + SELECT EXISTS (
1.441 + SELECT 1 FROM t2 WHERE x=0
1.442 + UNION ALL
1.443 + SELECT 2 FROM t2 WHERE x=-1
1.444 + UNION ALL
1.445 + SELECT 3 FROM t2 WHERE x=2
1.446 + UNION ALL
1.447 + SELECT 4 FROM t2 WHERE x=-2
1.448 + UNION ALL
1.449 + SELECT 5 FROM t2 WHERE x=4
1.450 + UNION ALL
1.451 + SELECT 6 FROM t2 WHERE y=0
1.452 + UNION ALL
1.453 + SELECT 7 FROM t2 WHERE y=1
1.454 + UNION ALL
1.455 + SELECT 8 FROM t2 WHERE y=-3
1.456 + UNION ALL
1.457 + SELECT 9 FROM t2 WHERE y=3
1.458 + UNION ALL
1.459 + SELECT 10 FROM t2 WHERE y=-4
1.460 + )
1.461 + }
1.462 +} {0}
1.463 +
1.464 +do_test tkt1473-6.3 {
1.465 + execsql {
1.466 + SELECT EXISTS (
1.467 + SELECT 1 FROM t2 WHERE x=0
1.468 + UNION
1.469 + SELECT 2 FROM t2 WHERE x=1
1.470 + UNION
1.471 + SELECT 3 FROM t2 WHERE x=2
1.472 + UNION
1.473 + SELECT 4 FROM t2 WHERE x=3
1.474 + UNION
1.475 + SELECT 5 FROM t2 WHERE x=4
1.476 + UNION
1.477 + SELECT 6 FROM t2 WHERE y=0
1.478 + UNION
1.479 + SELECT 7 FROM t2 WHERE y=1
1.480 + UNION
1.481 + SELECT 8 FROM t2 WHERE y=2
1.482 + UNION
1.483 + SELECT 9 FROM t2 WHERE y=3
1.484 + UNION
1.485 + SELECT 10 FROM t2 WHERE y=4
1.486 + )
1.487 + }
1.488 +} {1}
1.489 +do_test tkt1473-6.4 {
1.490 + execsql {
1.491 + SELECT EXISTS (
1.492 + SELECT 1 FROM t2 WHERE x=0
1.493 + UNION
1.494 + SELECT 2 FROM t2 WHERE x=-1
1.495 + UNION
1.496 + SELECT 3 FROM t2 WHERE x=2
1.497 + UNION
1.498 + SELECT 4 FROM t2 WHERE x=3
1.499 + UNION
1.500 + SELECT 5 FROM t2 WHERE x=4
1.501 + UNION
1.502 + SELECT 6 FROM t2 WHERE y=0
1.503 + UNION
1.504 + SELECT 7 FROM t2 WHERE y=1
1.505 + UNION
1.506 + SELECT 8 FROM t2 WHERE y=2
1.507 + UNION
1.508 + SELECT 9 FROM t2 WHERE y=3
1.509 + UNION
1.510 + SELECT 10 FROM t2 WHERE y=4
1.511 + )
1.512 + }
1.513 +} {1}
1.514 +
1.515 +do_test tkt1473-6.5 {
1.516 + execsql {
1.517 + SELECT EXISTS (
1.518 + SELECT 1 FROM t2 WHERE x=0
1.519 + UNION
1.520 + SELECT 2 FROM t2 WHERE x=-1
1.521 + UNION
1.522 + SELECT 3 FROM t2 WHERE x=2
1.523 + UNION
1.524 + SELECT 4 FROM t2 WHERE x=-1
1.525 + UNION
1.526 + SELECT 5 FROM t2 WHERE x=4
1.527 + UNION
1.528 + SELECT 6 FROM t2 WHERE y=0
1.529 + UNION
1.530 + SELECT 7 FROM t2 WHERE y=1
1.531 + UNION
1.532 + SELECT 8 FROM t2 WHERE y=2
1.533 + UNION
1.534 + SELECT 9 FROM t2 WHERE y=3
1.535 + UNION
1.536 + SELECT 10 FROM t2 WHERE y=-4
1.537 + )
1.538 + }
1.539 +} {1}
1.540 +do_test tkt1473-6.6 {
1.541 + execsql {
1.542 + SELECT EXISTS (
1.543 + SELECT 1 FROM t2 WHERE x=0
1.544 + UNION
1.545 + SELECT 2 FROM t2 WHERE x=-1
1.546 + UNION
1.547 + SELECT 3 FROM t2 WHERE x=2
1.548 + UNION
1.549 + SELECT 4 FROM t2 WHERE x=-2
1.550 + UNION
1.551 + SELECT 5 FROM t2 WHERE x=4
1.552 + UNION
1.553 + SELECT 6 FROM t2 WHERE y=0
1.554 + UNION
1.555 + SELECT 7 FROM t2 WHERE y=1
1.556 + UNION
1.557 + SELECT 8 FROM t2 WHERE y=-3
1.558 + UNION
1.559 + SELECT 9 FROM t2 WHERE y=3
1.560 + UNION
1.561 + SELECT 10 FROM t2 WHERE y=4
1.562 + )
1.563 + }
1.564 +} {1}
1.565 +do_test tkt1473-6.7 {
1.566 + execsql {
1.567 + SELECT EXISTS (
1.568 + SELECT 1 FROM t2 WHERE x=0
1.569 + UNION
1.570 + SELECT 2 FROM t2 WHERE x=-1
1.571 + UNION
1.572 + SELECT 3 FROM t2 WHERE x=2
1.573 + UNION
1.574 + SELECT 4 FROM t2 WHERE x=-2
1.575 + UNION
1.576 + SELECT 5 FROM t2 WHERE x=4
1.577 + UNION
1.578 + SELECT 6 FROM t2 WHERE y=0
1.579 + UNION
1.580 + SELECT 7 FROM t2 WHERE y=1
1.581 + UNION
1.582 + SELECT 8 FROM t2 WHERE y=-3
1.583 + UNION
1.584 + SELECT 9 FROM t2 WHERE y=3
1.585 + UNION
1.586 + SELECT 10 FROM t2 WHERE y=-4
1.587 + )
1.588 + }
1.589 +} {0}
1.590 +do_test tkt1473-6.8 {
1.591 + execsql {
1.592 + SELECT EXISTS (
1.593 + SELECT 1 FROM t2 WHERE x=0
1.594 + UNION
1.595 + SELECT 2 FROM t2 WHERE x=-1
1.596 + UNION
1.597 + SELECT 3 FROM t2 WHERE x=2
1.598 + UNION
1.599 + SELECT 4 FROM t2 WHERE x=-2
1.600 + UNION
1.601 + SELECT 5 FROM t2 WHERE x=4
1.602 + UNION ALL
1.603 + SELECT 6 FROM t2 WHERE y=0
1.604 + UNION
1.605 + SELECT 7 FROM t2 WHERE y=1
1.606 + UNION
1.607 + SELECT 8 FROM t2 WHERE y=-3
1.608 + UNION
1.609 + SELECT 9 FROM t2 WHERE y=3
1.610 + UNION
1.611 + SELECT 10 FROM t2 WHERE y=4
1.612 + )
1.613 + }
1.614 +} {1}
1.615 +do_test tkt1473-6.9 {
1.616 + execsql {
1.617 + SELECT EXISTS (
1.618 + SELECT 1 FROM t2 WHERE x=0
1.619 + UNION
1.620 + SELECT 2 FROM t2 WHERE x=-1
1.621 + UNION
1.622 + SELECT 3 FROM t2 WHERE x=2
1.623 + UNION
1.624 + SELECT 4 FROM t2 WHERE x=-2
1.625 + UNION
1.626 + SELECT 5 FROM t2 WHERE x=4
1.627 + UNION ALL
1.628 + SELECT 6 FROM t2 WHERE y=0
1.629 + UNION
1.630 + SELECT 7 FROM t2 WHERE y=1
1.631 + UNION
1.632 + SELECT 8 FROM t2 WHERE y=-3
1.633 + UNION
1.634 + SELECT 9 FROM t2 WHERE y=3
1.635 + UNION
1.636 + SELECT 10 FROM t2 WHERE y=-4
1.637 + )
1.638 + }
1.639 +} {0}
1.640 +
1.641 +do_test tkt1473-7.1 {
1.642 + execsql {
1.643 + SELECT 1 FROM t2 WHERE x=1 EXCEPT SELECT 2 FROM t2 WHERE y=2
1.644 + }
1.645 +} {1}
1.646 +do_test tkt1473-7.2 {
1.647 + execsql {
1.648 + SELECT (
1.649 + SELECT 1 FROM t2 WHERE x=1 EXCEPT SELECT 2 FROM t2 WHERE y=2
1.650 + )
1.651 + }
1.652 +} {1}
1.653 +do_test tkt1473-7.3 {
1.654 + execsql {
1.655 + SELECT EXISTS (
1.656 + SELECT 1 FROM t2 WHERE x=1 EXCEPT SELECT 2 FROM t2 WHERE y=2
1.657 + )
1.658 + }
1.659 +} {1}
1.660 +do_test tkt1473-7.4 {
1.661 + execsql {
1.662 + SELECT (
1.663 + SELECT 1 FROM t2 WHERE x=0 EXCEPT SELECT 2 FROM t2 WHERE y=2
1.664 + )
1.665 + }
1.666 +} {{}}
1.667 +do_test tkt1473-7.5 {
1.668 + execsql {
1.669 + SELECT EXISTS (
1.670 + SELECT 1 FROM t2 WHERE x=0 EXCEPT SELECT 2 FROM t2 WHERE y=2
1.671 + )
1.672 + }
1.673 +} {0}
1.674 +
1.675 +do_test tkt1473-8.1 {
1.676 + execsql {
1.677 + SELECT 1 FROM t2 WHERE x=1 INTERSECT SELECT 2 FROM t2 WHERE y=2
1.678 + }
1.679 +} {}
1.680 +do_test tkt1473-8.1 {
1.681 + execsql {
1.682 + SELECT 1 FROM t2 WHERE x=1 INTERSECT SELECT 1 FROM t2 WHERE y=2
1.683 + }
1.684 +} {1}
1.685 +do_test tkt1473-8.3 {
1.686 + execsql {
1.687 + SELECT (
1.688 + SELECT 1 FROM t2 WHERE x=1 INTERSECT SELECT 2 FROM t2 WHERE y=2
1.689 + )
1.690 + }
1.691 +} {{}}
1.692 +do_test tkt1473-8.4 {
1.693 + execsql {
1.694 + SELECT (
1.695 + SELECT 1 FROM t2 WHERE x=1 INTERSECT SELECT 1 FROM t2 WHERE y=2
1.696 + )
1.697 + }
1.698 +} {1}
1.699 +do_test tkt1473-8.5 {
1.700 + execsql {
1.701 + SELECT EXISTS (
1.702 + SELECT 1 FROM t2 WHERE x=1 INTERSECT SELECT 2 FROM t2 WHERE y=2
1.703 + )
1.704 + }
1.705 +} {0}
1.706 +do_test tkt1473-8.6 {
1.707 + execsql {
1.708 + SELECT EXISTS (
1.709 + SELECT 1 FROM t2 WHERE x=1 INTERSECT SELECT 1 FROM t2 WHERE y=2
1.710 + )
1.711 + }
1.712 +} {1}
1.713 +do_test tkt1473-8.7 {
1.714 + execsql {
1.715 + SELECT (
1.716 + SELECT 1 FROM t2 WHERE x=0 INTERSECT SELECT 1 FROM t2 WHERE y=2
1.717 + )
1.718 + }
1.719 +} {{}}
1.720 +do_test tkt1473-8.8 {
1.721 + execsql {
1.722 + SELECT EXISTS (
1.723 + SELECT 1 FROM t2 WHERE x=1 INTERSECT SELECT 1 FROM t2 WHERE y=0
1.724 + )
1.725 + }
1.726 +} {0}
1.727 +
1.728 +
1.729 +
1.730 +
1.731 +finish_test