1 # 2005 September 19 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 # This file implements regression tests for SQLite library. 12 # 13 # This file implements tests to verify that ticket #1473 has been 14 # fixed. 15 # 16 17 set testdir [file dirname $argv0] 18 source $testdir/tester.tcl 19 20 ifcapable !compound { 21 finish_test 22 return 23 } 24 25 do_test tkt1473-1.1 { 26 execsql { 27 CREATE TABLE t1(a,b); 28 INSERT INTO t1 VALUES(1,2); 29 INSERT INTO t1 VALUES(3,4); 30 SELECT * FROM t1 31 } 32 } {1 2 3 4} 33 34 do_test tkt1473-1.2 { 35 execsql { 36 SELECT 1 FROM t1 WHERE a=1 UNION ALL SELECT 2 FROM t1 WHERE b=0 37 } 38 } {1} 39 do_test tkt1473-1.3 { 40 execsql { 41 SELECT 1 FROM t1 WHERE a=1 UNION SELECT 2 FROM t1 WHERE b=0 42 } 43 } {1} 44 do_test tkt1473-1.4 { 45 execsql { 46 SELECT 1 FROM t1 WHERE a=1 UNION ALL SELECT 2 FROM t1 WHERE b=4 47 } 48 } {1 2} 49 do_test tkt1473-1.5 { 50 execsql { 51 SELECT 1 FROM t1 WHERE a=1 UNION SELECT 2 FROM t1 WHERE b=4 52 } 53 } {1 2} 54 do_test tkt1473-1.6 { 55 execsql { 56 SELECT 1 FROM t1 WHERE a=0 UNION ALL SELECT 2 FROM t1 WHERE b=4 57 } 58 } {2} 59 do_test tkt1473-1.7 { 60 execsql { 61 SELECT 1 FROM t1 WHERE a=0 UNION SELECT 2 FROM t1 WHERE b=4 62 } 63 } {2} 64 do_test tkt1473-1.8 { 65 execsql { 66 SELECT 1 FROM t1 WHERE a=0 UNION ALL SELECT 2 FROM t1 WHERE b=0 67 } 68 } {} 69 do_test tkt1473-1.9 { 70 execsql { 71 SELECT 1 FROM t1 WHERE a=0 UNION SELECT 2 FROM t1 WHERE b=0 72 } 73 } {} 74 75 # Everything from this point on depends on sub-queries. So skip it 76 # if sub-queries are not available. 77 ifcapable !subquery { 78 finish_test 79 return 80 } 81 82 do_test tkt1473-2.2 { 83 execsql { 84 SELECT (SELECT 1 FROM t1 WHERE a=1 UNION ALL SELECT 2 FROM t1 WHERE b=0) 85 } 86 } {1} 87 do_test tkt1473-2.3 { 88 execsql { 89 SELECT (SELECT 1 FROM t1 WHERE a=1 UNION SELECT 2 FROM t1 WHERE b=0) 90 } 91 } {1} 92 do_test tkt1473-2.4 { 93 execsql { 94 SELECT (SELECT 1 FROM t1 WHERE a=1 UNION ALL SELECT 2 FROM t1 WHERE b=4) 95 } 96 } {1} 97 do_test tkt1473-2.5 { 98 execsql { 99 SELECT (SELECT 1 FROM t1 WHERE a=1 UNION SELECT 2 FROM t1 WHERE b=4) 100 } 101 } {1} 102 do_test tkt1473-2.6 { 103 execsql { 104 SELECT (SELECT 1 FROM t1 WHERE a=0 UNION ALL SELECT 2 FROM t1 WHERE b=4) 105 } 106 } {2} 107 do_test tkt1473-2.7 { 108 execsql { 109 SELECT (SELECT 1 FROM t1 WHERE a=0 UNION SELECT 2 FROM t1 WHERE b=4) 110 } 111 } {2} 112 do_test tkt1473-2.8 { 113 execsql { 114 SELECT (SELECT 1 FROM t1 WHERE a=0 UNION ALL SELECT 2 FROM t1 WHERE b=0) 115 } 116 } {{}} 117 do_test tkt1473-2.9 { 118 execsql { 119 SELECT (SELECT 1 FROM t1 WHERE a=0 UNION SELECT 2 FROM t1 WHERE b=0) 120 } 121 } {{}} 122 123 do_test tkt1473-3.2 { 124 execsql { 125 SELECT EXISTS 126 (SELECT 1 FROM t1 WHERE a=1 UNION ALL SELECT 2 FROM t1 WHERE b=0) 127 } 128 } {1} 129 do_test tkt1473-3.3 { 130 execsql { 131 SELECT EXISTS 132 (SELECT 1 FROM t1 WHERE a=1 UNION SELECT 2 FROM t1 WHERE b=0) 133 } 134 } {1} 135 do_test tkt1473-3.4 { 136 execsql { 137 SELECT EXISTS 138 (SELECT 1 FROM t1 WHERE a=1 UNION ALL SELECT 2 FROM t1 WHERE b=4) 139 } 140 } {1} 141 do_test tkt1473-3.5 { 142 execsql { 143 SELECT EXISTS 144 (SELECT 1 FROM t1 WHERE a=1 UNION SELECT 2 FROM t1 WHERE b=4) 145 } 146 } {1} 147 do_test tkt1473-3.6 { 148 execsql { 149 SELECT EXISTS 150 (SELECT 1 FROM t1 WHERE a=0 UNION ALL SELECT 2 FROM t1 WHERE b=4) 151 } 152 } {1} 153 do_test tkt1473-3.7 { 154 execsql { 155 SELECT EXISTS 156 (SELECT 1 FROM t1 WHERE a=0 UNION SELECT 2 FROM t1 WHERE b=4) 157 } 158 } {1} 159 do_test tkt1473-3.8 { 160 execsql { 161 SELECT EXISTS 162 (SELECT 1 FROM t1 WHERE a=0 UNION ALL SELECT 2 FROM t1 WHERE b=0) 163 } 164 } {0} 165 do_test tkt1473-3.9 { 166 execsql { 167 SELECT EXISTS 168 (SELECT 1 FROM t1 WHERE a=0 UNION SELECT 2 FROM t1 WHERE b=0) 169 } 170 } {0} 171 172 do_test tkt1473-4.1 { 173 execsql { 174 CREATE TABLE t2(x,y); 175 INSERT INTO t2 VALUES(1,2); 176 INSERT INTO t2 SELECT x+2, y+2 FROM t2; 177 INSERT INTO t2 SELECT x+4, y+4 FROM t2; 178 INSERT INTO t2 SELECT x+8, y+8 FROM t2; 179 INSERT INTO t2 SELECT x+16, y+16 FROM t2; 180 INSERT INTO t2 SELECT x+32, y+32 FROM t2; 181 INSERT INTO t2 SELECT x+64, y+64 FROM t2; 182 SELECT count(*), sum(x), sum(y) FROM t2; 183 } 184 } {64 4096 4160} 185 do_test tkt1473-4.2 { 186 execsql { 187 SELECT 1 FROM t2 WHERE x=0 188 UNION ALL 189 SELECT 2 FROM t2 WHERE x=1 190 UNION ALL 191 SELECT 3 FROM t2 WHERE x=2 192 UNION ALL 193 SELECT 4 FROM t2 WHERE x=3 194 UNION ALL 195 SELECT 5 FROM t2 WHERE x=4 196 UNION ALL 197 SELECT 6 FROM t2 WHERE y=0 198 UNION ALL 199 SELECT 7 FROM t2 WHERE y=1 200 UNION ALL 201 SELECT 8 FROM t2 WHERE y=2 202 UNION ALL 203 SELECT 9 FROM t2 WHERE y=3 204 UNION ALL 205 SELECT 10 FROM t2 WHERE y=4 206 } 207 } {2 4 8 10} 208 do_test tkt1473-4.3 { 209 execsql { 210 SELECT ( 211 SELECT 1 FROM t2 WHERE x=0 212 UNION ALL 213 SELECT 2 FROM t2 WHERE x=1 214 UNION ALL 215 SELECT 3 FROM t2 WHERE x=2 216 UNION ALL 217 SELECT 4 FROM t2 WHERE x=3 218 UNION ALL 219 SELECT 5 FROM t2 WHERE x=4 220 UNION ALL 221 SELECT 6 FROM t2 WHERE y=0 222 UNION ALL 223 SELECT 7 FROM t2 WHERE y=1 224 UNION ALL 225 SELECT 8 FROM t2 WHERE y=2 226 UNION ALL 227 SELECT 9 FROM t2 WHERE y=3 228 UNION ALL 229 SELECT 10 FROM t2 WHERE y=4 230 ) 231 } 232 } {2} 233 do_test tkt1473-4.4 { 234 execsql { 235 SELECT ( 236 SELECT 1 FROM t2 WHERE x=0 237 UNION ALL 238 SELECT 2 FROM t2 WHERE x=-1 239 UNION ALL 240 SELECT 3 FROM t2 WHERE x=2 241 UNION ALL 242 SELECT 4 FROM t2 WHERE x=3 243 UNION ALL 244 SELECT 5 FROM t2 WHERE x=4 245 UNION ALL 246 SELECT 6 FROM t2 WHERE y=0 247 UNION ALL 248 SELECT 7 FROM t2 WHERE y=1 249 UNION ALL 250 SELECT 8 FROM t2 WHERE y=2 251 UNION ALL 252 SELECT 9 FROM t2 WHERE y=3 253 UNION ALL 254 SELECT 10 FROM t2 WHERE y=4 255 ) 256 } 257 } {4} 258 do_test tkt1473-4.5 { 259 execsql { 260 SELECT ( 261 SELECT 1 FROM t2 WHERE x=0 262 UNION ALL 263 SELECT 2 FROM t2 WHERE x=-1 264 UNION ALL 265 SELECT 3 FROM t2 WHERE x=2 266 UNION ALL 267 SELECT 4 FROM t2 WHERE x=-1 268 UNION ALL 269 SELECT 5 FROM t2 WHERE x=4 270 UNION ALL 271 SELECT 6 FROM t2 WHERE y=0 272 UNION ALL 273 SELECT 7 FROM t2 WHERE y=1 274 UNION ALL 275 SELECT 8 FROM t2 WHERE y=2 276 UNION ALL 277 SELECT 9 FROM t2 WHERE y=3 278 UNION ALL 279 SELECT 10 FROM t2 WHERE y=-4 280 ) 281 } 282 } {8} 283 do_test tkt1473-4.6 { 284 execsql { 285 SELECT ( 286 SELECT 1 FROM t2 WHERE x=0 287 UNION ALL 288 SELECT 2 FROM t2 WHERE x=-1 289 UNION ALL 290 SELECT 3 FROM t2 WHERE x=2 291 UNION ALL 292 SELECT 4 FROM t2 WHERE x=-2 293 UNION ALL 294 SELECT 5 FROM t2 WHERE x=4 295 UNION ALL 296 SELECT 6 FROM t2 WHERE y=0 297 UNION ALL 298 SELECT 7 FROM t2 WHERE y=1 299 UNION ALL 300 SELECT 8 FROM t2 WHERE y=-3 301 UNION ALL 302 SELECT 9 FROM t2 WHERE y=3 303 UNION ALL 304 SELECT 10 FROM t2 WHERE y=4 305 ) 306 } 307 } {10} 308 do_test tkt1473-4.7 { 309 execsql { 310 SELECT ( 311 SELECT 1 FROM t2 WHERE x=0 312 UNION ALL 313 SELECT 2 FROM t2 WHERE x=-1 314 UNION ALL 315 SELECT 3 FROM t2 WHERE x=2 316 UNION ALL 317 SELECT 4 FROM t2 WHERE x=-2 318 UNION ALL 319 SELECT 5 FROM t2 WHERE x=4 320 UNION ALL 321 SELECT 6 FROM t2 WHERE y=0 322 UNION ALL 323 SELECT 7 FROM t2 WHERE y=1 324 UNION ALL 325 SELECT 8 FROM t2 WHERE y=-3 326 UNION ALL 327 SELECT 9 FROM t2 WHERE y=3 328 UNION ALL 329 SELECT 10 FROM t2 WHERE y=-4 330 ) 331 } 332 } {{}} 333 334 do_test tkt1473-5.3 { 335 execsql { 336 SELECT EXISTS ( 337 SELECT 1 FROM t2 WHERE x=0 338 UNION ALL 339 SELECT 2 FROM t2 WHERE x=1 340 UNION ALL 341 SELECT 3 FROM t2 WHERE x=2 342 UNION ALL 343 SELECT 4 FROM t2 WHERE x=3 344 UNION ALL 345 SELECT 5 FROM t2 WHERE x=4 346 UNION ALL 347 SELECT 6 FROM t2 WHERE y=0 348 UNION ALL 349 SELECT 7 FROM t2 WHERE y=1 350 UNION ALL 351 SELECT 8 FROM t2 WHERE y=2 352 UNION ALL 353 SELECT 9 FROM t2 WHERE y=3 354 UNION ALL 355 SELECT 10 FROM t2 WHERE y=4 356 ) 357 } 358 } {1} 359 do_test tkt1473-5.4 { 360 execsql { 361 SELECT EXISTS ( 362 SELECT 1 FROM t2 WHERE x=0 363 UNION ALL 364 SELECT 2 FROM t2 WHERE x=-1 365 UNION ALL 366 SELECT 3 FROM t2 WHERE x=2 367 UNION ALL 368 SELECT 4 FROM t2 WHERE x=3 369 UNION ALL 370 SELECT 5 FROM t2 WHERE x=4 371 UNION ALL 372 SELECT 6 FROM t2 WHERE y=0 373 UNION ALL 374 SELECT 7 FROM t2 WHERE y=1 375 UNION ALL 376 SELECT 8 FROM t2 WHERE y=2 377 UNION ALL 378 SELECT 9 FROM t2 WHERE y=3 379 UNION ALL 380 SELECT 10 FROM t2 WHERE y=4 381 ) 382 } 383 } {1} 384 385 do_test tkt1473-5.5 { 386 execsql { 387 SELECT EXISTS ( 388 SELECT 1 FROM t2 WHERE x=0 389 UNION ALL 390 SELECT 2 FROM t2 WHERE x=-1 391 UNION ALL 392 SELECT 3 FROM t2 WHERE x=2 393 UNION ALL 394 SELECT 4 FROM t2 WHERE x=-1 395 UNION ALL 396 SELECT 5 FROM t2 WHERE x=4 397 UNION ALL 398 SELECT 6 FROM t2 WHERE y=0 399 UNION ALL 400 SELECT 7 FROM t2 WHERE y=1 401 UNION ALL 402 SELECT 8 FROM t2 WHERE y=2 403 UNION ALL 404 SELECT 9 FROM t2 WHERE y=3 405 UNION ALL 406 SELECT 10 FROM t2 WHERE y=-4 407 ) 408 } 409 } {1} 410 do_test tkt1473-5.6 { 411 execsql { 412 SELECT EXISTS ( 413 SELECT 1 FROM t2 WHERE x=0 414 UNION ALL 415 SELECT 2 FROM t2 WHERE x=-1 416 UNION ALL 417 SELECT 3 FROM t2 WHERE x=2 418 UNION ALL 419 SELECT 4 FROM t2 WHERE x=-2 420 UNION ALL 421 SELECT 5 FROM t2 WHERE x=4 422 UNION ALL 423 SELECT 6 FROM t2 WHERE y=0 424 UNION ALL 425 SELECT 7 FROM t2 WHERE y=1 426 UNION ALL 427 SELECT 8 FROM t2 WHERE y=-3 428 UNION ALL 429 SELECT 9 FROM t2 WHERE y=3 430 UNION ALL 431 SELECT 10 FROM t2 WHERE y=4 432 ) 433 } 434 } {1} 435 do_test tkt1473-5.7 { 436 execsql { 437 SELECT EXISTS ( 438 SELECT 1 FROM t2 WHERE x=0 439 UNION ALL 440 SELECT 2 FROM t2 WHERE x=-1 441 UNION ALL 442 SELECT 3 FROM t2 WHERE x=2 443 UNION ALL 444 SELECT 4 FROM t2 WHERE x=-2 445 UNION ALL 446 SELECT 5 FROM t2 WHERE x=4 447 UNION ALL 448 SELECT 6 FROM t2 WHERE y=0 449 UNION ALL 450 SELECT 7 FROM t2 WHERE y=1 451 UNION ALL 452 SELECT 8 FROM t2 WHERE y=-3 453 UNION ALL 454 SELECT 9 FROM t2 WHERE y=3 455 UNION ALL 456 SELECT 10 FROM t2 WHERE y=-4 457 ) 458 } 459 } {0} 460 461 do_test tkt1473-6.3 { 462 execsql { 463 SELECT EXISTS ( 464 SELECT 1 FROM t2 WHERE x=0 465 UNION 466 SELECT 2 FROM t2 WHERE x=1 467 UNION 468 SELECT 3 FROM t2 WHERE x=2 469 UNION 470 SELECT 4 FROM t2 WHERE x=3 471 UNION 472 SELECT 5 FROM t2 WHERE x=4 473 UNION 474 SELECT 6 FROM t2 WHERE y=0 475 UNION 476 SELECT 7 FROM t2 WHERE y=1 477 UNION 478 SELECT 8 FROM t2 WHERE y=2 479 UNION 480 SELECT 9 FROM t2 WHERE y=3 481 UNION 482 SELECT 10 FROM t2 WHERE y=4 483 ) 484 } 485 } {1} 486 do_test tkt1473-6.4 { 487 execsql { 488 SELECT EXISTS ( 489 SELECT 1 FROM t2 WHERE x=0 490 UNION 491 SELECT 2 FROM t2 WHERE x=-1 492 UNION 493 SELECT 3 FROM t2 WHERE x=2 494 UNION 495 SELECT 4 FROM t2 WHERE x=3 496 UNION 497 SELECT 5 FROM t2 WHERE x=4 498 UNION 499 SELECT 6 FROM t2 WHERE y=0 500 UNION 501 SELECT 7 FROM t2 WHERE y=1 502 UNION 503 SELECT 8 FROM t2 WHERE y=2 504 UNION 505 SELECT 9 FROM t2 WHERE y=3 506 UNION 507 SELECT 10 FROM t2 WHERE y=4 508 ) 509 } 510 } {1} 511 512 do_test tkt1473-6.5 { 513 execsql { 514 SELECT EXISTS ( 515 SELECT 1 FROM t2 WHERE x=0 516 UNION 517 SELECT 2 FROM t2 WHERE x=-1 518 UNION 519 SELECT 3 FROM t2 WHERE x=2 520 UNION 521 SELECT 4 FROM t2 WHERE x=-1 522 UNION 523 SELECT 5 FROM t2 WHERE x=4 524 UNION 525 SELECT 6 FROM t2 WHERE y=0 526 UNION 527 SELECT 7 FROM t2 WHERE y=1 528 UNION 529 SELECT 8 FROM t2 WHERE y=2 530 UNION 531 SELECT 9 FROM t2 WHERE y=3 532 UNION 533 SELECT 10 FROM t2 WHERE y=-4 534 ) 535 } 536 } {1} 537 do_test tkt1473-6.6 { 538 execsql { 539 SELECT EXISTS ( 540 SELECT 1 FROM t2 WHERE x=0 541 UNION 542 SELECT 2 FROM t2 WHERE x=-1 543 UNION 544 SELECT 3 FROM t2 WHERE x=2 545 UNION 546 SELECT 4 FROM t2 WHERE x=-2 547 UNION 548 SELECT 5 FROM t2 WHERE x=4 549 UNION 550 SELECT 6 FROM t2 WHERE y=0 551 UNION 552 SELECT 7 FROM t2 WHERE y=1 553 UNION 554 SELECT 8 FROM t2 WHERE y=-3 555 UNION 556 SELECT 9 FROM t2 WHERE y=3 557 UNION 558 SELECT 10 FROM t2 WHERE y=4 559 ) 560 } 561 } {1} 562 do_test tkt1473-6.7 { 563 execsql { 564 SELECT EXISTS ( 565 SELECT 1 FROM t2 WHERE x=0 566 UNION 567 SELECT 2 FROM t2 WHERE x=-1 568 UNION 569 SELECT 3 FROM t2 WHERE x=2 570 UNION 571 SELECT 4 FROM t2 WHERE x=-2 572 UNION 573 SELECT 5 FROM t2 WHERE x=4 574 UNION 575 SELECT 6 FROM t2 WHERE y=0 576 UNION 577 SELECT 7 FROM t2 WHERE y=1 578 UNION 579 SELECT 8 FROM t2 WHERE y=-3 580 UNION 581 SELECT 9 FROM t2 WHERE y=3 582 UNION 583 SELECT 10 FROM t2 WHERE y=-4 584 ) 585 } 586 } {0} 587 do_test tkt1473-6.8 { 588 execsql { 589 SELECT EXISTS ( 590 SELECT 1 FROM t2 WHERE x=0 591 UNION 592 SELECT 2 FROM t2 WHERE x=-1 593 UNION 594 SELECT 3 FROM t2 WHERE x=2 595 UNION 596 SELECT 4 FROM t2 WHERE x=-2 597 UNION 598 SELECT 5 FROM t2 WHERE x=4 599 UNION ALL 600 SELECT 6 FROM t2 WHERE y=0 601 UNION 602 SELECT 7 FROM t2 WHERE y=1 603 UNION 604 SELECT 8 FROM t2 WHERE y=-3 605 UNION 606 SELECT 9 FROM t2 WHERE y=3 607 UNION 608 SELECT 10 FROM t2 WHERE y=4 609 ) 610 } 611 } {1} 612 do_test tkt1473-6.9 { 613 execsql { 614 SELECT EXISTS ( 615 SELECT 1 FROM t2 WHERE x=0 616 UNION 617 SELECT 2 FROM t2 WHERE x=-1 618 UNION 619 SELECT 3 FROM t2 WHERE x=2 620 UNION 621 SELECT 4 FROM t2 WHERE x=-2 622 UNION 623 SELECT 5 FROM t2 WHERE x=4 624 UNION ALL 625 SELECT 6 FROM t2 WHERE y=0 626 UNION 627 SELECT 7 FROM t2 WHERE y=1 628 UNION 629 SELECT 8 FROM t2 WHERE y=-3 630 UNION 631 SELECT 9 FROM t2 WHERE y=3 632 UNION 633 SELECT 10 FROM t2 WHERE y=-4 634 ) 635 } 636 } {0} 637 638 do_test tkt1473-7.1 { 639 execsql { 640 SELECT 1 FROM t2 WHERE x=1 EXCEPT SELECT 2 FROM t2 WHERE y=2 641 } 642 } {1} 643 do_test tkt1473-7.2 { 644 execsql { 645 SELECT ( 646 SELECT 1 FROM t2 WHERE x=1 EXCEPT SELECT 2 FROM t2 WHERE y=2 647 ) 648 } 649 } {1} 650 do_test tkt1473-7.3 { 651 execsql { 652 SELECT EXISTS ( 653 SELECT 1 FROM t2 WHERE x=1 EXCEPT SELECT 2 FROM t2 WHERE y=2 654 ) 655 } 656 } {1} 657 do_test tkt1473-7.4 { 658 execsql { 659 SELECT ( 660 SELECT 1 FROM t2 WHERE x=0 EXCEPT SELECT 2 FROM t2 WHERE y=2 661 ) 662 } 663 } {{}} 664 do_test tkt1473-7.5 { 665 execsql { 666 SELECT EXISTS ( 667 SELECT 1 FROM t2 WHERE x=0 EXCEPT SELECT 2 FROM t2 WHERE y=2 668 ) 669 } 670 } {0} 671 672 do_test tkt1473-8.1 { 673 execsql { 674 SELECT 1 FROM t2 WHERE x=1 INTERSECT SELECT 2 FROM t2 WHERE y=2 675 } 676 } {} 677 do_test tkt1473-8.1 { 678 execsql { 679 SELECT 1 FROM t2 WHERE x=1 INTERSECT SELECT 1 FROM t2 WHERE y=2 680 } 681 } {1} 682 do_test tkt1473-8.3 { 683 execsql { 684 SELECT ( 685 SELECT 1 FROM t2 WHERE x=1 INTERSECT SELECT 2 FROM t2 WHERE y=2 686 ) 687 } 688 } {{}} 689 do_test tkt1473-8.4 { 690 execsql { 691 SELECT ( 692 SELECT 1 FROM t2 WHERE x=1 INTERSECT SELECT 1 FROM t2 WHERE y=2 693 ) 694 } 695 } {1} 696 do_test tkt1473-8.5 { 697 execsql { 698 SELECT EXISTS ( 699 SELECT 1 FROM t2 WHERE x=1 INTERSECT SELECT 2 FROM t2 WHERE y=2 700 ) 701 } 702 } {0} 703 do_test tkt1473-8.6 { 704 execsql { 705 SELECT EXISTS ( 706 SELECT 1 FROM t2 WHERE x=1 INTERSECT SELECT 1 FROM t2 WHERE y=2 707 ) 708 } 709 } {1} 710 do_test tkt1473-8.7 { 711 execsql { 712 SELECT ( 713 SELECT 1 FROM t2 WHERE x=0 INTERSECT SELECT 1 FROM t2 WHERE y=2 714 ) 715 } 716 } {{}} 717 do_test tkt1473-8.8 { 718 execsql { 719 SELECT EXISTS ( 720 SELECT 1 FROM t2 WHERE x=1 INTERSECT SELECT 1 FROM t2 WHERE y=0 721 ) 722 } 723 } {0} 724 725 726 727 728 finish_test 729