1 # 2008 December 11 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 is automatically generated from a separate TCL script. 14 # This file seeks to exercise integer boundary values. 15 # 16 # $Id: boundary3.test,v 1.2 2009/01/02 15:45:48 shane Exp $ 17 18 set testdir [file dirname $argv0] 19 source $testdir/tester.tcl 20 21 # Many of the boundary tests depend on a working 64-bit implementation. 22 if {![working_64bit_int]} { finish_test; return } 23 24 do_test boundary3-1.1 { 25 db eval { 26 CREATE TABLE t1(a,x); 27 INSERT INTO t1(oid,a,x) VALUES(-8388609,1,'ffffffffff7fffff'); 28 INSERT INTO t1(oid,a,x) VALUES(-36028797018963969,2,'ff7fffffffffffff'); 29 INSERT INTO t1(oid,a,x) VALUES(9223372036854775807,3,'7fffffffffffffff'); 30 INSERT INTO t1(oid,a,x) VALUES(127,4,'000000000000007f'); 31 INSERT INTO t1(oid,a,x) VALUES(3,5,'0000000000000003'); 32 INSERT INTO t1(oid,a,x) VALUES(16777216,6,'0000000001000000'); 33 INSERT INTO t1(oid,a,x) VALUES(4398046511103,7,'000003ffffffffff'); 34 INSERT INTO t1(oid,a,x) VALUES(16383,8,'0000000000003fff'); 35 INSERT INTO t1(oid,a,x) VALUES(16777215,9,'0000000000ffffff'); 36 INSERT INTO t1(oid,a,x) VALUES(281474976710655,10,'0000ffffffffffff'); 37 INSERT INTO t1(oid,a,x) VALUES(-2147483648,11,'ffffffff80000000'); 38 INSERT INTO t1(oid,a,x) VALUES(268435455,12,'000000000fffffff'); 39 INSERT INTO t1(oid,a,x) VALUES(562949953421311,13,'0001ffffffffffff'); 40 INSERT INTO t1(oid,a,x) VALUES(4294967295,14,'00000000ffffffff'); 41 INSERT INTO t1(oid,a,x) VALUES(2097151,15,'00000000001fffff'); 42 INSERT INTO t1(oid,a,x) VALUES(16384,16,'0000000000004000'); 43 INSERT INTO t1(oid,a,x) VALUES(72057594037927935,17,'00ffffffffffffff'); 44 INSERT INTO t1(oid,a,x) VALUES(8388607,18,'00000000007fffff'); 45 INSERT INTO t1(oid,a,x) VALUES(1099511627776,19,'0000010000000000'); 46 INSERT INTO t1(oid,a,x) VALUES(2147483647,20,'000000007fffffff'); 47 INSERT INTO t1(oid,a,x) VALUES(-140737488355329,21,'ffff7fffffffffff'); 48 INSERT INTO t1(oid,a,x) VALUES(34359738368,22,'0000000800000000'); 49 INSERT INTO t1(oid,a,x) VALUES(32767,23,'0000000000007fff'); 50 INSERT INTO t1(oid,a,x) VALUES(8388608,24,'0000000000800000'); 51 INSERT INTO t1(oid,a,x) VALUES(140737488355327,25,'00007fffffffffff'); 52 INSERT INTO t1(oid,a,x) VALUES(281474976710656,26,'0001000000000000'); 53 INSERT INTO t1(oid,a,x) VALUES(36028797018963967,27,'007fffffffffffff'); 54 INSERT INTO t1(oid,a,x) VALUES(72057594037927936,28,'0100000000000000'); 55 INSERT INTO t1(oid,a,x) VALUES(-32769,29,'ffffffffffff7fff'); 56 INSERT INTO t1(oid,a,x) VALUES(255,30,'00000000000000ff'); 57 INSERT INTO t1(oid,a,x) VALUES(4,31,'0000000000000004'); 58 INSERT INTO t1(oid,a,x) VALUES(-32768,32,'ffffffffffff8000'); 59 INSERT INTO t1(oid,a,x) VALUES(-2,33,'fffffffffffffffe'); 60 INSERT INTO t1(oid,a,x) VALUES(140737488355328,34,'0000800000000000'); 61 INSERT INTO t1(oid,a,x) VALUES(549755813888,35,'0000008000000000'); 62 INSERT INTO t1(oid,a,x) VALUES(4294967296,36,'0000000100000000'); 63 INSERT INTO t1(oid,a,x) VALUES(-8388608,37,'ffffffffff800000'); 64 INSERT INTO t1(oid,a,x) VALUES(-1,38,'ffffffffffffffff'); 65 INSERT INTO t1(oid,a,x) VALUES(34359738367,39,'00000007ffffffff'); 66 INSERT INTO t1(oid,a,x) VALUES(268435456,40,'0000000010000000'); 67 INSERT INTO t1(oid,a,x) VALUES(2,41,'0000000000000002'); 68 INSERT INTO t1(oid,a,x) VALUES(2097152,42,'0000000000200000'); 69 INSERT INTO t1(oid,a,x) VALUES(562949953421312,43,'0002000000000000'); 70 INSERT INTO t1(oid,a,x) VALUES(-140737488355328,44,'ffff800000000000'); 71 INSERT INTO t1(oid,a,x) VALUES(36028797018963968,45,'0080000000000000'); 72 INSERT INTO t1(oid,a,x) VALUES(549755813887,46,'0000007fffffffff'); 73 INSERT INTO t1(oid,a,x) VALUES(-2147483649,47,'ffffffff7fffffff'); 74 INSERT INTO t1(oid,a,x) VALUES(65535,48,'000000000000ffff'); 75 INSERT INTO t1(oid,a,x) VALUES(128,49,'0000000000000080'); 76 INSERT INTO t1(oid,a,x) VALUES(32768,50,'0000000000008000'); 77 INSERT INTO t1(oid,a,x) VALUES(2147483648,51,'0000000080000000'); 78 INSERT INTO t1(oid,a,x) VALUES(-3,52,'fffffffffffffffd'); 79 INSERT INTO t1(oid,a,x) VALUES(-128,53,'ffffffffffffff80'); 80 INSERT INTO t1(oid,a,x) VALUES(-129,54,'ffffffffffffff7f'); 81 INSERT INTO t1(oid,a,x) VALUES(-9223372036854775808,55,'8000000000000000'); 82 INSERT INTO t1(oid,a,x) VALUES(4398046511104,56,'0000040000000000'); 83 INSERT INTO t1(oid,a,x) VALUES(1099511627775,57,'000000ffffffffff'); 84 INSERT INTO t1(oid,a,x) VALUES(-549755813889,58,'ffffff7fffffffff'); 85 INSERT INTO t1(oid,a,x) VALUES(0,59,'0000000000000000'); 86 INSERT INTO t1(oid,a,x) VALUES(1,60,'0000000000000001'); 87 INSERT INTO t1(oid,a,x) VALUES(256,61,'0000000000000100'); 88 INSERT INTO t1(oid,a,x) VALUES(65536,62,'0000000000010000'); 89 INSERT INTO t1(oid,a,x) VALUES(-549755813888,63,'ffffff8000000000'); 90 INSERT INTO t1(oid,a,x) VALUES(-36028797018963968,64,'ff80000000000000'); 91 CREATE INDEX t1i1 ON t1(a); 92 CREATE INDEX t1i2 ON t1(x); 93 } 94 } {} 95 do_test boundary3-1.2 { 96 db eval { 97 SELECT count(*) FROM t1 98 } 99 } {64} 100 do_test boundary3-1.3 { 101 db eval { 102 CREATE TABLE t2(r,a); 103 INSERT INTO t2 SELECT rowid, a FROM t1; 104 CREATE INDEX t2i1 ON t2(r); 105 CREATE INDEX t2i2 ON t2(a); 106 INSERT INTO t2 VALUES(9.22337303685477580800e+18,65); 107 INSERT INTO t2 VALUES(-9.22337303685477580800e+18,66); 108 SELECT count(*) FROM t2; 109 } 110 } {66} 111 do_test boundary3-2.1.1 { 112 db eval { 113 SELECT t1.* FROM t1, t2 WHERE t1.rowid=72057594037927935 AND t2.a=t1.a 114 } 115 } {17 00ffffffffffffff} 116 do_test boundary3-2.1.2 { 117 db eval { 118 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='00ffffffffffffff' 119 } 120 } {72057594037927935 17} 121 do_test boundary3-2.1.3 { 122 db eval { 123 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=17 124 } 125 } {72057594037927935 00ffffffffffffff} 126 do_test boundary3-2.1.gt.1 { 127 db eval { 128 SELECT t2.a FROM t1 JOIN t2 USING(a) 129 WHERE t1.rowid > 72057594037927935 ORDER BY t2.a 130 } 131 } {3 28} 132 do_test boundary3-2.1.gt.2 { 133 db eval { 134 SELECT t2.a FROM t2 NATURAL JOIN t1 135 WHERE t1.rowid > 72057594037927935 ORDER BY t1.a DESC 136 } 137 } {28 3} 138 do_test boundary3-2.1.gt.3 { 139 db eval { 140 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 141 WHERE t2.a=17 142 ORDER BY t1.rowid 143 } 144 } {28 3} 145 do_test boundary3-2.1.gt.4 { 146 db eval { 147 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 148 WHERE t2.a=17 149 ORDER BY t1.rowid DESC 150 } 151 } {3 28} 152 do_test boundary3-2.1.gt.5 { 153 db eval { 154 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 155 WHERE t2.a=17 156 ORDER BY x 157 } 158 } {28 3} 159 do_test boundary3-2.1.ge.1 { 160 db eval { 161 SELECT t2.a FROM t1 JOIN t2 USING(a) 162 WHERE t1.rowid >= 72057594037927935 ORDER BY t2.a 163 } 164 } {3 17 28} 165 do_test boundary3-2.1.ge.2 { 166 db eval { 167 SELECT t2.a FROM t2 NATURAL JOIN t1 168 WHERE t1.rowid >= 72057594037927935 ORDER BY t1.a DESC 169 } 170 } {28 17 3} 171 do_test boundary3-2.1.ge.3 { 172 db eval { 173 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 174 WHERE t2.a=17 175 ORDER BY t1.rowid 176 } 177 } {17 28 3} 178 do_test boundary3-2.1.ge.4 { 179 db eval { 180 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 181 WHERE t2.a=17 182 ORDER BY t1.rowid DESC 183 } 184 } {3 28 17} 185 do_test boundary3-2.1.ge.5 { 186 db eval { 187 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 188 WHERE t2.a=17 189 ORDER BY x 190 } 191 } {17 28 3} 192 do_test boundary3-2.1.lt.1 { 193 db eval { 194 SELECT t2.a FROM t1 JOIN t2 USING(a) 195 WHERE t1.rowid < 72057594037927935 ORDER BY t2.a 196 } 197 } {1 2 4 5 6 7 8 9 10 11 12 13 14 15 16 18 19 20 21 22 23 24 25 26 27 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} 198 do_test boundary3-2.1.lt.2 { 199 db eval { 200 SELECT t2.a FROM t2 NATURAL JOIN t1 201 WHERE t1.rowid < 72057594037927935 ORDER BY t1.a DESC 202 } 203 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 27 26 25 24 23 22 21 20 19 18 16 15 14 13 12 11 10 9 8 7 6 5 4 2 1} 204 do_test boundary3-2.1.lt.3 { 205 db eval { 206 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 207 WHERE t2.a=17 208 ORDER BY t1.rowid 209 } 210 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45} 211 do_test boundary3-2.1.lt.4 { 212 db eval { 213 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 214 WHERE t2.a=17 215 ORDER BY t1.rowid DESC 216 } 217 } {45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 218 do_test boundary3-2.1.lt.5 { 219 db eval { 220 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 221 WHERE t2.a=17 222 ORDER BY x 223 } 224 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 225 do_test boundary3-2.1.le.1 { 226 db eval { 227 SELECT t2.a FROM t1 JOIN t2 USING(a) 228 WHERE t1.rowid <= 72057594037927935 ORDER BY t2.a 229 } 230 } {1 2 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 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} 231 do_test boundary3-2.1.le.2 { 232 db eval { 233 SELECT t2.a FROM t2 NATURAL JOIN t1 234 WHERE t1.rowid <= 72057594037927935 ORDER BY t1.a DESC 235 } 236 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 2 1} 237 do_test boundary3-2.1.le.3 { 238 db eval { 239 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 240 WHERE t2.a=17 241 ORDER BY t1.rowid 242 } 243 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17} 244 do_test boundary3-2.1.le.4 { 245 db eval { 246 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 247 WHERE t2.a=17 248 ORDER BY t1.rowid DESC 249 } 250 } {17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 251 do_test boundary3-2.1.le.5 { 252 db eval { 253 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 254 WHERE t2.a=17 255 ORDER BY x 256 } 257 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 258 do_test boundary3-2.2.1 { 259 db eval { 260 SELECT t1.* FROM t1, t2 WHERE t1.rowid=16384 AND t2.a=t1.a 261 } 262 } {16 0000000000004000} 263 do_test boundary3-2.2.2 { 264 db eval { 265 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000000004000' 266 } 267 } {16384 16} 268 do_test boundary3-2.2.3 { 269 db eval { 270 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=16 271 } 272 } {16384 0000000000004000} 273 do_test boundary3-2.2.gt.1 { 274 db eval { 275 SELECT t2.a FROM t1 JOIN t2 USING(a) 276 WHERE t1.rowid > 16384 ORDER BY t2.a 277 } 278 } {3 6 7 9 10 12 13 14 15 17 18 19 20 22 23 24 25 26 27 28 34 35 36 39 40 42 43 45 46 48 50 51 56 57 62} 279 do_test boundary3-2.2.gt.2 { 280 db eval { 281 SELECT t2.a FROM t2 NATURAL JOIN t1 282 WHERE t1.rowid > 16384 ORDER BY t1.a DESC 283 } 284 } {62 57 56 51 50 48 46 45 43 42 40 39 36 35 34 28 27 26 25 24 23 22 20 19 18 17 15 14 13 12 10 9 7 6 3} 285 do_test boundary3-2.2.gt.3 { 286 db eval { 287 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 288 WHERE t2.a=16 289 ORDER BY t1.rowid 290 } 291 } {23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 292 do_test boundary3-2.2.gt.4 { 293 db eval { 294 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 295 WHERE t2.a=16 296 ORDER BY t1.rowid DESC 297 } 298 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23} 299 do_test boundary3-2.2.gt.5 { 300 db eval { 301 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 302 WHERE t2.a=16 303 ORDER BY x 304 } 305 } {23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 306 do_test boundary3-2.2.gt.10 { 307 db eval { 308 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 309 WHERE t2.a=16 310 ORDER BY t1.rowid 311 } 312 } {23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 313 do_test boundary3-2.2.gt.11 { 314 db eval { 315 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 316 WHERE t2.a=16 317 ORDER BY t1.rowid DESC 318 } 319 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23} 320 do_test boundary3-2.2.ge.1 { 321 db eval { 322 SELECT t2.a FROM t1 JOIN t2 USING(a) 323 WHERE t1.rowid >= 16384 ORDER BY t2.a 324 } 325 } {3 6 7 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 34 35 36 39 40 42 43 45 46 48 50 51 56 57 62} 326 do_test boundary3-2.2.ge.2 { 327 db eval { 328 SELECT t2.a FROM t2 NATURAL JOIN t1 329 WHERE t1.rowid >= 16384 ORDER BY t1.a DESC 330 } 331 } {62 57 56 51 50 48 46 45 43 42 40 39 36 35 34 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 7 6 3} 332 do_test boundary3-2.2.ge.3 { 333 db eval { 334 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 335 WHERE t2.a=16 336 ORDER BY t1.rowid 337 } 338 } {16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 339 do_test boundary3-2.2.ge.4 { 340 db eval { 341 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 342 WHERE t2.a=16 343 ORDER BY t1.rowid DESC 344 } 345 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16} 346 do_test boundary3-2.2.ge.5 { 347 db eval { 348 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 349 WHERE t2.a=16 350 ORDER BY x 351 } 352 } {16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 353 do_test boundary3-2.2.ge.10 { 354 db eval { 355 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 356 WHERE t2.a=16 357 ORDER BY t1.rowid 358 } 359 } {16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 360 do_test boundary3-2.2.ge.11 { 361 db eval { 362 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 363 WHERE t2.a=16 364 ORDER BY t1.rowid DESC 365 } 366 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16} 367 do_test boundary3-2.2.lt.1 { 368 db eval { 369 SELECT t2.a FROM t1 JOIN t2 USING(a) 370 WHERE t1.rowid < 16384 ORDER BY t2.a 371 } 372 } {1 2 4 5 8 11 21 29 30 31 32 33 37 38 41 44 47 49 52 53 54 55 58 59 60 61 63 64} 373 do_test boundary3-2.2.lt.2 { 374 db eval { 375 SELECT t2.a FROM t2 NATURAL JOIN t1 376 WHERE t1.rowid < 16384 ORDER BY t1.a DESC 377 } 378 } {64 63 61 60 59 58 55 54 53 52 49 47 44 41 38 37 33 32 31 30 29 21 11 8 5 4 2 1} 379 do_test boundary3-2.2.lt.3 { 380 db eval { 381 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 382 WHERE t2.a=16 383 ORDER BY t1.rowid 384 } 385 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8} 386 do_test boundary3-2.2.lt.4 { 387 db eval { 388 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 389 WHERE t2.a=16 390 ORDER BY t1.rowid DESC 391 } 392 } {8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 393 do_test boundary3-2.2.lt.5 { 394 db eval { 395 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 396 WHERE t2.a=16 397 ORDER BY x 398 } 399 } {59 60 41 5 31 4 49 30 61 8 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 400 do_test boundary3-2.2.lt.10 { 401 db eval { 402 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 403 WHERE t2.a=16 404 ORDER BY t1.rowid 405 } 406 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8} 407 do_test boundary3-2.2.lt.11 { 408 db eval { 409 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 410 WHERE t2.a=16 411 ORDER BY t1.rowid DESC 412 } 413 } {8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 414 do_test boundary3-2.2.le.1 { 415 db eval { 416 SELECT t2.a FROM t1 JOIN t2 USING(a) 417 WHERE t1.rowid <= 16384 ORDER BY t2.a 418 } 419 } {1 2 4 5 8 11 16 21 29 30 31 32 33 37 38 41 44 47 49 52 53 54 55 58 59 60 61 63 64} 420 do_test boundary3-2.2.le.2 { 421 db eval { 422 SELECT t2.a FROM t2 NATURAL JOIN t1 423 WHERE t1.rowid <= 16384 ORDER BY t1.a DESC 424 } 425 } {64 63 61 60 59 58 55 54 53 52 49 47 44 41 38 37 33 32 31 30 29 21 16 11 8 5 4 2 1} 426 do_test boundary3-2.2.le.3 { 427 db eval { 428 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 429 WHERE t2.a=16 430 ORDER BY t1.rowid 431 } 432 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16} 433 do_test boundary3-2.2.le.4 { 434 db eval { 435 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 436 WHERE t2.a=16 437 ORDER BY t1.rowid DESC 438 } 439 } {16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 440 do_test boundary3-2.2.le.5 { 441 db eval { 442 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 443 WHERE t2.a=16 444 ORDER BY x 445 } 446 } {59 60 41 5 31 4 49 30 61 8 16 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 447 do_test boundary3-2.2.le.10 { 448 db eval { 449 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 450 WHERE t2.a=16 451 ORDER BY t1.rowid 452 } 453 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16} 454 do_test boundary3-2.2.le.11 { 455 db eval { 456 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 457 WHERE t2.a=16 458 ORDER BY t1.rowid DESC 459 } 460 } {16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 461 do_test boundary3-2.3.1 { 462 db eval { 463 SELECT t1.* FROM t1, t2 WHERE t1.rowid=4294967296 AND t2.a=t1.a 464 } 465 } {36 0000000100000000} 466 do_test boundary3-2.3.2 { 467 db eval { 468 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000100000000' 469 } 470 } {4294967296 36} 471 do_test boundary3-2.3.3 { 472 db eval { 473 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=36 474 } 475 } {4294967296 0000000100000000} 476 do_test boundary3-2.3.gt.1 { 477 db eval { 478 SELECT t2.a FROM t1 JOIN t2 USING(a) 479 WHERE t1.rowid > 4294967296 ORDER BY t2.a 480 } 481 } {3 7 10 13 17 19 22 25 26 27 28 34 35 39 43 45 46 56 57} 482 do_test boundary3-2.3.gt.2 { 483 db eval { 484 SELECT t2.a FROM t2 NATURAL JOIN t1 485 WHERE t1.rowid > 4294967296 ORDER BY t1.a DESC 486 } 487 } {57 56 46 45 43 39 35 34 28 27 26 25 22 19 17 13 10 7 3} 488 do_test boundary3-2.3.gt.3 { 489 db eval { 490 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 491 WHERE t2.a=36 492 ORDER BY t1.rowid 493 } 494 } {39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 495 do_test boundary3-2.3.gt.4 { 496 db eval { 497 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 498 WHERE t2.a=36 499 ORDER BY t1.rowid DESC 500 } 501 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39} 502 do_test boundary3-2.3.gt.5 { 503 db eval { 504 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 505 WHERE t2.a=36 506 ORDER BY x 507 } 508 } {39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 509 do_test boundary3-2.3.gt.10 { 510 db eval { 511 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 512 WHERE t2.a=36 513 ORDER BY t1.rowid 514 } 515 } {39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 516 do_test boundary3-2.3.gt.11 { 517 db eval { 518 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 519 WHERE t2.a=36 520 ORDER BY t1.rowid DESC 521 } 522 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39} 523 do_test boundary3-2.3.ge.1 { 524 db eval { 525 SELECT t2.a FROM t1 JOIN t2 USING(a) 526 WHERE t1.rowid >= 4294967296 ORDER BY t2.a 527 } 528 } {3 7 10 13 17 19 22 25 26 27 28 34 35 36 39 43 45 46 56 57} 529 do_test boundary3-2.3.ge.2 { 530 db eval { 531 SELECT t2.a FROM t2 NATURAL JOIN t1 532 WHERE t1.rowid >= 4294967296 ORDER BY t1.a DESC 533 } 534 } {57 56 46 45 43 39 36 35 34 28 27 26 25 22 19 17 13 10 7 3} 535 do_test boundary3-2.3.ge.3 { 536 db eval { 537 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 538 WHERE t2.a=36 539 ORDER BY t1.rowid 540 } 541 } {36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 542 do_test boundary3-2.3.ge.4 { 543 db eval { 544 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 545 WHERE t2.a=36 546 ORDER BY t1.rowid DESC 547 } 548 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36} 549 do_test boundary3-2.3.ge.5 { 550 db eval { 551 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 552 WHERE t2.a=36 553 ORDER BY x 554 } 555 } {36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 556 do_test boundary3-2.3.ge.10 { 557 db eval { 558 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 559 WHERE t2.a=36 560 ORDER BY t1.rowid 561 } 562 } {36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 563 do_test boundary3-2.3.ge.11 { 564 db eval { 565 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 566 WHERE t2.a=36 567 ORDER BY t1.rowid DESC 568 } 569 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36} 570 do_test boundary3-2.3.lt.1 { 571 db eval { 572 SELECT t2.a FROM t1 JOIN t2 USING(a) 573 WHERE t1.rowid < 4294967296 ORDER BY t2.a 574 } 575 } {1 2 4 5 6 8 9 11 12 14 15 16 18 20 21 23 24 29 30 31 32 33 37 38 40 41 42 44 47 48 49 50 51 52 53 54 55 58 59 60 61 62 63 64} 576 do_test boundary3-2.3.lt.2 { 577 db eval { 578 SELECT t2.a FROM t2 NATURAL JOIN t1 579 WHERE t1.rowid < 4294967296 ORDER BY t1.a DESC 580 } 581 } {64 63 62 61 60 59 58 55 54 53 52 51 50 49 48 47 44 42 41 40 38 37 33 32 31 30 29 24 23 21 20 18 16 15 14 12 11 9 8 6 5 4 2 1} 582 do_test boundary3-2.3.lt.3 { 583 db eval { 584 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 585 WHERE t2.a=36 586 ORDER BY t1.rowid 587 } 588 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14} 589 do_test boundary3-2.3.lt.4 { 590 db eval { 591 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 592 WHERE t2.a=36 593 ORDER BY t1.rowid DESC 594 } 595 } {14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 596 do_test boundary3-2.3.lt.5 { 597 db eval { 598 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 599 WHERE t2.a=36 600 ORDER BY x 601 } 602 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 603 do_test boundary3-2.3.lt.10 { 604 db eval { 605 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 606 WHERE t2.a=36 607 ORDER BY t1.rowid 608 } 609 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14} 610 do_test boundary3-2.3.lt.11 { 611 db eval { 612 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 613 WHERE t2.a=36 614 ORDER BY t1.rowid DESC 615 } 616 } {14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 617 do_test boundary3-2.3.le.1 { 618 db eval { 619 SELECT t2.a FROM t1 JOIN t2 USING(a) 620 WHERE t1.rowid <= 4294967296 ORDER BY t2.a 621 } 622 } {1 2 4 5 6 8 9 11 12 14 15 16 18 20 21 23 24 29 30 31 32 33 36 37 38 40 41 42 44 47 48 49 50 51 52 53 54 55 58 59 60 61 62 63 64} 623 do_test boundary3-2.3.le.2 { 624 db eval { 625 SELECT t2.a FROM t2 NATURAL JOIN t1 626 WHERE t1.rowid <= 4294967296 ORDER BY t1.a DESC 627 } 628 } {64 63 62 61 60 59 58 55 54 53 52 51 50 49 48 47 44 42 41 40 38 37 36 33 32 31 30 29 24 23 21 20 18 16 15 14 12 11 9 8 6 5 4 2 1} 629 do_test boundary3-2.3.le.3 { 630 db eval { 631 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 632 WHERE t2.a=36 633 ORDER BY t1.rowid 634 } 635 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36} 636 do_test boundary3-2.3.le.4 { 637 db eval { 638 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 639 WHERE t2.a=36 640 ORDER BY t1.rowid DESC 641 } 642 } {36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 643 do_test boundary3-2.3.le.5 { 644 db eval { 645 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 646 WHERE t2.a=36 647 ORDER BY x 648 } 649 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 650 do_test boundary3-2.3.le.10 { 651 db eval { 652 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 653 WHERE t2.a=36 654 ORDER BY t1.rowid 655 } 656 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36} 657 do_test boundary3-2.3.le.11 { 658 db eval { 659 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 660 WHERE t2.a=36 661 ORDER BY t1.rowid DESC 662 } 663 } {36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 664 do_test boundary3-2.4.1 { 665 db eval { 666 SELECT t1.* FROM t1, t2 WHERE t1.rowid=16777216 AND t2.a=t1.a 667 } 668 } {6 0000000001000000} 669 do_test boundary3-2.4.2 { 670 db eval { 671 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000001000000' 672 } 673 } {16777216 6} 674 do_test boundary3-2.4.3 { 675 db eval { 676 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=6 677 } 678 } {16777216 0000000001000000} 679 do_test boundary3-2.4.gt.1 { 680 db eval { 681 SELECT t2.a FROM t1 JOIN t2 USING(a) 682 WHERE t1.rowid > 16777216 ORDER BY t2.a 683 } 684 } {3 7 10 12 13 14 17 19 20 22 25 26 27 28 34 35 36 39 40 43 45 46 51 56 57} 685 do_test boundary3-2.4.gt.2 { 686 db eval { 687 SELECT t2.a FROM t2 NATURAL JOIN t1 688 WHERE t1.rowid > 16777216 ORDER BY t1.a DESC 689 } 690 } {57 56 51 46 45 43 40 39 36 35 34 28 27 26 25 22 20 19 17 14 13 12 10 7 3} 691 do_test boundary3-2.4.gt.3 { 692 db eval { 693 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 694 WHERE t2.a=6 695 ORDER BY t1.rowid 696 } 697 } {12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 698 do_test boundary3-2.4.gt.4 { 699 db eval { 700 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 701 WHERE t2.a=6 702 ORDER BY t1.rowid DESC 703 } 704 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12} 705 do_test boundary3-2.4.gt.5 { 706 db eval { 707 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 708 WHERE t2.a=6 709 ORDER BY x 710 } 711 } {12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 712 do_test boundary3-2.4.gt.10 { 713 db eval { 714 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 715 WHERE t2.a=6 716 ORDER BY t1.rowid 717 } 718 } {12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 719 do_test boundary3-2.4.gt.11 { 720 db eval { 721 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 722 WHERE t2.a=6 723 ORDER BY t1.rowid DESC 724 } 725 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12} 726 do_test boundary3-2.4.ge.1 { 727 db eval { 728 SELECT t2.a FROM t1 JOIN t2 USING(a) 729 WHERE t1.rowid >= 16777216 ORDER BY t2.a 730 } 731 } {3 6 7 10 12 13 14 17 19 20 22 25 26 27 28 34 35 36 39 40 43 45 46 51 56 57} 732 do_test boundary3-2.4.ge.2 { 733 db eval { 734 SELECT t2.a FROM t2 NATURAL JOIN t1 735 WHERE t1.rowid >= 16777216 ORDER BY t1.a DESC 736 } 737 } {57 56 51 46 45 43 40 39 36 35 34 28 27 26 25 22 20 19 17 14 13 12 10 7 6 3} 738 do_test boundary3-2.4.ge.3 { 739 db eval { 740 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 741 WHERE t2.a=6 742 ORDER BY t1.rowid 743 } 744 } {6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 745 do_test boundary3-2.4.ge.4 { 746 db eval { 747 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 748 WHERE t2.a=6 749 ORDER BY t1.rowid DESC 750 } 751 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6} 752 do_test boundary3-2.4.ge.5 { 753 db eval { 754 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 755 WHERE t2.a=6 756 ORDER BY x 757 } 758 } {6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 759 do_test boundary3-2.4.ge.10 { 760 db eval { 761 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 762 WHERE t2.a=6 763 ORDER BY t1.rowid 764 } 765 } {6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 766 do_test boundary3-2.4.ge.11 { 767 db eval { 768 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 769 WHERE t2.a=6 770 ORDER BY t1.rowid DESC 771 } 772 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6} 773 do_test boundary3-2.4.lt.1 { 774 db eval { 775 SELECT t2.a FROM t1 JOIN t2 USING(a) 776 WHERE t1.rowid < 16777216 ORDER BY t2.a 777 } 778 } {1 2 4 5 8 9 11 15 16 18 21 23 24 29 30 31 32 33 37 38 41 42 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 779 do_test boundary3-2.4.lt.2 { 780 db eval { 781 SELECT t2.a FROM t2 NATURAL JOIN t1 782 WHERE t1.rowid < 16777216 ORDER BY t1.a DESC 783 } 784 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 42 41 38 37 33 32 31 30 29 24 23 21 18 16 15 11 9 8 5 4 2 1} 785 do_test boundary3-2.4.lt.3 { 786 db eval { 787 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 788 WHERE t2.a=6 789 ORDER BY t1.rowid 790 } 791 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9} 792 do_test boundary3-2.4.lt.4 { 793 db eval { 794 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 795 WHERE t2.a=6 796 ORDER BY t1.rowid DESC 797 } 798 } {9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 799 do_test boundary3-2.4.lt.5 { 800 db eval { 801 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 802 WHERE t2.a=6 803 ORDER BY x 804 } 805 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 806 do_test boundary3-2.4.lt.10 { 807 db eval { 808 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 809 WHERE t2.a=6 810 ORDER BY t1.rowid 811 } 812 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9} 813 do_test boundary3-2.4.lt.11 { 814 db eval { 815 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 816 WHERE t2.a=6 817 ORDER BY t1.rowid DESC 818 } 819 } {9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 820 do_test boundary3-2.4.le.1 { 821 db eval { 822 SELECT t2.a FROM t1 JOIN t2 USING(a) 823 WHERE t1.rowid <= 16777216 ORDER BY t2.a 824 } 825 } {1 2 4 5 6 8 9 11 15 16 18 21 23 24 29 30 31 32 33 37 38 41 42 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 826 do_test boundary3-2.4.le.2 { 827 db eval { 828 SELECT t2.a FROM t2 NATURAL JOIN t1 829 WHERE t1.rowid <= 16777216 ORDER BY t1.a DESC 830 } 831 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 42 41 38 37 33 32 31 30 29 24 23 21 18 16 15 11 9 8 6 5 4 2 1} 832 do_test boundary3-2.4.le.3 { 833 db eval { 834 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 835 WHERE t2.a=6 836 ORDER BY t1.rowid 837 } 838 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6} 839 do_test boundary3-2.4.le.4 { 840 db eval { 841 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 842 WHERE t2.a=6 843 ORDER BY t1.rowid DESC 844 } 845 } {6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 846 do_test boundary3-2.4.le.5 { 847 db eval { 848 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 849 WHERE t2.a=6 850 ORDER BY x 851 } 852 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 853 do_test boundary3-2.4.le.10 { 854 db eval { 855 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 856 WHERE t2.a=6 857 ORDER BY t1.rowid 858 } 859 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6} 860 do_test boundary3-2.4.le.11 { 861 db eval { 862 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 863 WHERE t2.a=6 864 ORDER BY t1.rowid DESC 865 } 866 } {6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 867 do_test boundary3-2.5.1 { 868 db eval { 869 SELECT t1.* FROM t1, t2 WHERE t1.rowid=-32769 AND t2.a=t1.a 870 } 871 } {29 ffffffffffff7fff} 872 do_test boundary3-2.5.2 { 873 db eval { 874 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='ffffffffffff7fff' 875 } 876 } {-32769 29} 877 do_test boundary3-2.5.3 { 878 db eval { 879 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=29 880 } 881 } {-32769 ffffffffffff7fff} 882 do_test boundary3-2.5.gt.1 { 883 db eval { 884 SELECT t2.a FROM t1 JOIN t2 USING(a) 885 WHERE t1.rowid > -32769 ORDER BY t2.a 886 } 887 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 32 33 34 35 36 38 39 40 41 42 43 45 46 48 49 50 51 52 53 54 56 57 59 60 61 62} 888 do_test boundary3-2.5.gt.2 { 889 db eval { 890 SELECT t2.a FROM t2 NATURAL JOIN t1 891 WHERE t1.rowid > -32769 ORDER BY t1.a DESC 892 } 893 } {62 61 60 59 57 56 54 53 52 51 50 49 48 46 45 43 42 41 40 39 38 36 35 34 33 32 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 894 do_test boundary3-2.5.gt.3 { 895 db eval { 896 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 897 WHERE t2.a=29 898 ORDER BY t1.rowid 899 } 900 } {32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 901 do_test boundary3-2.5.gt.4 { 902 db eval { 903 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 904 WHERE t2.a=29 905 ORDER BY t1.rowid DESC 906 } 907 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32} 908 do_test boundary3-2.5.gt.5 { 909 db eval { 910 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 911 WHERE t2.a=29 912 ORDER BY x 913 } 914 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 32 54 53 52 33 38} 915 do_test boundary3-2.5.gt.10 { 916 db eval { 917 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 918 WHERE t2.a=29 919 ORDER BY t1.rowid 920 } 921 } {32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 922 do_test boundary3-2.5.gt.11 { 923 db eval { 924 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 925 WHERE t2.a=29 926 ORDER BY t1.rowid DESC 927 } 928 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32} 929 do_test boundary3-2.5.ge.1 { 930 db eval { 931 SELECT t2.a FROM t1 JOIN t2 USING(a) 932 WHERE t1.rowid >= -32769 ORDER BY t2.a 933 } 934 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 38 39 40 41 42 43 45 46 48 49 50 51 52 53 54 56 57 59 60 61 62} 935 do_test boundary3-2.5.ge.2 { 936 db eval { 937 SELECT t2.a FROM t2 NATURAL JOIN t1 938 WHERE t1.rowid >= -32769 ORDER BY t1.a DESC 939 } 940 } {62 61 60 59 57 56 54 53 52 51 50 49 48 46 45 43 42 41 40 39 38 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 941 do_test boundary3-2.5.ge.3 { 942 db eval { 943 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 944 WHERE t2.a=29 945 ORDER BY t1.rowid 946 } 947 } {29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 948 do_test boundary3-2.5.ge.4 { 949 db eval { 950 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 951 WHERE t2.a=29 952 ORDER BY t1.rowid DESC 953 } 954 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29} 955 do_test boundary3-2.5.ge.5 { 956 db eval { 957 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 958 WHERE t2.a=29 959 ORDER BY x 960 } 961 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 29 32 54 53 52 33 38} 962 do_test boundary3-2.5.ge.10 { 963 db eval { 964 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 965 WHERE t2.a=29 966 ORDER BY t1.rowid 967 } 968 } {29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 969 do_test boundary3-2.5.ge.11 { 970 db eval { 971 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 972 WHERE t2.a=29 973 ORDER BY t1.rowid DESC 974 } 975 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29} 976 do_test boundary3-2.5.lt.1 { 977 db eval { 978 SELECT t2.a FROM t1 JOIN t2 USING(a) 979 WHERE t1.rowid < -32769 ORDER BY t2.a 980 } 981 } {1 2 11 21 37 44 47 55 58 63 64} 982 do_test boundary3-2.5.lt.2 { 983 db eval { 984 SELECT t2.a FROM t2 NATURAL JOIN t1 985 WHERE t1.rowid < -32769 ORDER BY t1.a DESC 986 } 987 } {64 63 58 55 47 44 37 21 11 2 1} 988 do_test boundary3-2.5.lt.3 { 989 db eval { 990 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 991 WHERE t2.a=29 992 ORDER BY t1.rowid 993 } 994 } {55 2 64 21 44 58 63 47 11 1 37} 995 do_test boundary3-2.5.lt.4 { 996 db eval { 997 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 998 WHERE t2.a=29 999 ORDER BY t1.rowid DESC 1000 } 1001 } {37 1 11 47 63 58 44 21 64 2 55} 1002 do_test boundary3-2.5.lt.5 { 1003 db eval { 1004 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 1005 WHERE t2.a=29 1006 ORDER BY x 1007 } 1008 } {55 2 64 21 44 58 63 47 11 1 37} 1009 do_test boundary3-2.5.lt.10 { 1010 db eval { 1011 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 1012 WHERE t2.a=29 1013 ORDER BY t1.rowid 1014 } 1015 } {55 2 64 21 44 58 63 47 11 1 37} 1016 do_test boundary3-2.5.lt.11 { 1017 db eval { 1018 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 1019 WHERE t2.a=29 1020 ORDER BY t1.rowid DESC 1021 } 1022 } {37 1 11 47 63 58 44 21 64 2 55} 1023 do_test boundary3-2.5.le.1 { 1024 db eval { 1025 SELECT t2.a FROM t1 JOIN t2 USING(a) 1026 WHERE t1.rowid <= -32769 ORDER BY t2.a 1027 } 1028 } {1 2 11 21 29 37 44 47 55 58 63 64} 1029 do_test boundary3-2.5.le.2 { 1030 db eval { 1031 SELECT t2.a FROM t2 NATURAL JOIN t1 1032 WHERE t1.rowid <= -32769 ORDER BY t1.a DESC 1033 } 1034 } {64 63 58 55 47 44 37 29 21 11 2 1} 1035 do_test boundary3-2.5.le.3 { 1036 db eval { 1037 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 1038 WHERE t2.a=29 1039 ORDER BY t1.rowid 1040 } 1041 } {55 2 64 21 44 58 63 47 11 1 37 29} 1042 do_test boundary3-2.5.le.4 { 1043 db eval { 1044 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 1045 WHERE t2.a=29 1046 ORDER BY t1.rowid DESC 1047 } 1048 } {29 37 1 11 47 63 58 44 21 64 2 55} 1049 do_test boundary3-2.5.le.5 { 1050 db eval { 1051 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 1052 WHERE t2.a=29 1053 ORDER BY x 1054 } 1055 } {55 2 64 21 44 58 63 47 11 1 37 29} 1056 do_test boundary3-2.5.le.10 { 1057 db eval { 1058 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 1059 WHERE t2.a=29 1060 ORDER BY t1.rowid 1061 } 1062 } {55 2 64 21 44 58 63 47 11 1 37 29} 1063 do_test boundary3-2.5.le.11 { 1064 db eval { 1065 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 1066 WHERE t2.a=29 1067 ORDER BY t1.rowid DESC 1068 } 1069 } {29 37 1 11 47 63 58 44 21 64 2 55} 1070 do_test boundary3-2.6.1 { 1071 db eval { 1072 SELECT t1.* FROM t1, t2 WHERE t1.rowid=-140737488355329 AND t2.a=t1.a 1073 } 1074 } {21 ffff7fffffffffff} 1075 do_test boundary3-2.6.2 { 1076 db eval { 1077 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='ffff7fffffffffff' 1078 } 1079 } {-140737488355329 21} 1080 do_test boundary3-2.6.3 { 1081 db eval { 1082 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=21 1083 } 1084 } {-140737488355329 ffff7fffffffffff} 1085 do_test boundary3-2.6.gt.1 { 1086 db eval { 1087 SELECT t2.a FROM t1 JOIN t2 USING(a) 1088 WHERE t1.rowid > -140737488355329 ORDER BY t2.a 1089 } 1090 } {1 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 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 56 57 58 59 60 61 62 63} 1091 do_test boundary3-2.6.gt.2 { 1092 db eval { 1093 SELECT t2.a FROM t2 NATURAL JOIN t1 1094 WHERE t1.rowid > -140737488355329 ORDER BY t1.a DESC 1095 } 1096 } {63 62 61 60 59 58 57 56 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 1} 1097 do_test boundary3-2.6.gt.3 { 1098 db eval { 1099 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 1100 WHERE t2.a=21 1101 ORDER BY t1.rowid 1102 } 1103 } {44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1104 do_test boundary3-2.6.gt.4 { 1105 db eval { 1106 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 1107 WHERE t2.a=21 1108 ORDER BY t1.rowid DESC 1109 } 1110 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44} 1111 do_test boundary3-2.6.gt.5 { 1112 db eval { 1113 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 1114 WHERE t2.a=21 1115 ORDER BY x 1116 } 1117 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 1118 do_test boundary3-2.6.ge.1 { 1119 db eval { 1120 SELECT t2.a FROM t1 JOIN t2 USING(a) 1121 WHERE t1.rowid >= -140737488355329 ORDER BY t2.a 1122 } 1123 } {1 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 56 57 58 59 60 61 62 63} 1124 do_test boundary3-2.6.ge.2 { 1125 db eval { 1126 SELECT t2.a FROM t2 NATURAL JOIN t1 1127 WHERE t1.rowid >= -140737488355329 ORDER BY t1.a DESC 1128 } 1129 } {63 62 61 60 59 58 57 56 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 1} 1130 do_test boundary3-2.6.ge.3 { 1131 db eval { 1132 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 1133 WHERE t2.a=21 1134 ORDER BY t1.rowid 1135 } 1136 } {21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1137 do_test boundary3-2.6.ge.4 { 1138 db eval { 1139 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 1140 WHERE t2.a=21 1141 ORDER BY t1.rowid DESC 1142 } 1143 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21} 1144 do_test boundary3-2.6.ge.5 { 1145 db eval { 1146 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 1147 WHERE t2.a=21 1148 ORDER BY x 1149 } 1150 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 1151 do_test boundary3-2.6.lt.1 { 1152 db eval { 1153 SELECT t2.a FROM t1 JOIN t2 USING(a) 1154 WHERE t1.rowid < -140737488355329 ORDER BY t2.a 1155 } 1156 } {2 55 64} 1157 do_test boundary3-2.6.lt.2 { 1158 db eval { 1159 SELECT t2.a FROM t2 NATURAL JOIN t1 1160 WHERE t1.rowid < -140737488355329 ORDER BY t1.a DESC 1161 } 1162 } {64 55 2} 1163 do_test boundary3-2.6.lt.3 { 1164 db eval { 1165 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 1166 WHERE t2.a=21 1167 ORDER BY t1.rowid 1168 } 1169 } {55 2 64} 1170 do_test boundary3-2.6.lt.4 { 1171 db eval { 1172 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 1173 WHERE t2.a=21 1174 ORDER BY t1.rowid DESC 1175 } 1176 } {64 2 55} 1177 do_test boundary3-2.6.lt.5 { 1178 db eval { 1179 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 1180 WHERE t2.a=21 1181 ORDER BY x 1182 } 1183 } {55 2 64} 1184 do_test boundary3-2.6.le.1 { 1185 db eval { 1186 SELECT t2.a FROM t1 JOIN t2 USING(a) 1187 WHERE t1.rowid <= -140737488355329 ORDER BY t2.a 1188 } 1189 } {2 21 55 64} 1190 do_test boundary3-2.6.le.2 { 1191 db eval { 1192 SELECT t2.a FROM t2 NATURAL JOIN t1 1193 WHERE t1.rowid <= -140737488355329 ORDER BY t1.a DESC 1194 } 1195 } {64 55 21 2} 1196 do_test boundary3-2.6.le.3 { 1197 db eval { 1198 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 1199 WHERE t2.a=21 1200 ORDER BY t1.rowid 1201 } 1202 } {55 2 64 21} 1203 do_test boundary3-2.6.le.4 { 1204 db eval { 1205 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 1206 WHERE t2.a=21 1207 ORDER BY t1.rowid DESC 1208 } 1209 } {21 64 2 55} 1210 do_test boundary3-2.6.le.5 { 1211 db eval { 1212 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 1213 WHERE t2.a=21 1214 ORDER BY x 1215 } 1216 } {55 2 64 21} 1217 do_test boundary3-2.7.1 { 1218 db eval { 1219 SELECT t1.* FROM t1, t2 WHERE t1.rowid=2 AND t2.a=t1.a 1220 } 1221 } {41 0000000000000002} 1222 do_test boundary3-2.7.2 { 1223 db eval { 1224 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000000000002' 1225 } 1226 } {2 41} 1227 do_test boundary3-2.7.3 { 1228 db eval { 1229 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=41 1230 } 1231 } {2 0000000000000002} 1232 do_test boundary3-2.7.gt.1 { 1233 db eval { 1234 SELECT t2.a FROM t1 JOIN t2 USING(a) 1235 WHERE t1.rowid > 2 ORDER BY t2.a 1236 } 1237 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 34 35 36 39 40 42 43 45 46 48 49 50 51 56 57 61 62} 1238 do_test boundary3-2.7.gt.2 { 1239 db eval { 1240 SELECT t2.a FROM t2 NATURAL JOIN t1 1241 WHERE t1.rowid > 2 ORDER BY t1.a DESC 1242 } 1243 } {62 61 57 56 51 50 49 48 46 45 43 42 40 39 36 35 34 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 1244 do_test boundary3-2.7.gt.3 { 1245 db eval { 1246 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 1247 WHERE t2.a=41 1248 ORDER BY t1.rowid 1249 } 1250 } {5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1251 do_test boundary3-2.7.gt.4 { 1252 db eval { 1253 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 1254 WHERE t2.a=41 1255 ORDER BY t1.rowid DESC 1256 } 1257 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5} 1258 do_test boundary3-2.7.gt.5 { 1259 db eval { 1260 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 1261 WHERE t2.a=41 1262 ORDER BY x 1263 } 1264 } {5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1265 do_test boundary3-2.7.gt.10 { 1266 db eval { 1267 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 1268 WHERE t2.a=41 1269 ORDER BY t1.rowid 1270 } 1271 } {5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1272 do_test boundary3-2.7.gt.11 { 1273 db eval { 1274 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 1275 WHERE t2.a=41 1276 ORDER BY t1.rowid DESC 1277 } 1278 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5} 1279 do_test boundary3-2.7.ge.1 { 1280 db eval { 1281 SELECT t2.a FROM t1 JOIN t2 USING(a) 1282 WHERE t1.rowid >= 2 ORDER BY t2.a 1283 } 1284 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 34 35 36 39 40 41 42 43 45 46 48 49 50 51 56 57 61 62} 1285 do_test boundary3-2.7.ge.2 { 1286 db eval { 1287 SELECT t2.a FROM t2 NATURAL JOIN t1 1288 WHERE t1.rowid >= 2 ORDER BY t1.a DESC 1289 } 1290 } {62 61 57 56 51 50 49 48 46 45 43 42 41 40 39 36 35 34 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 1291 do_test boundary3-2.7.ge.3 { 1292 db eval { 1293 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 1294 WHERE t2.a=41 1295 ORDER BY t1.rowid 1296 } 1297 } {41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1298 do_test boundary3-2.7.ge.4 { 1299 db eval { 1300 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 1301 WHERE t2.a=41 1302 ORDER BY t1.rowid DESC 1303 } 1304 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41} 1305 do_test boundary3-2.7.ge.5 { 1306 db eval { 1307 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 1308 WHERE t2.a=41 1309 ORDER BY x 1310 } 1311 } {41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1312 do_test boundary3-2.7.ge.10 { 1313 db eval { 1314 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 1315 WHERE t2.a=41 1316 ORDER BY t1.rowid 1317 } 1318 } {41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1319 do_test boundary3-2.7.ge.11 { 1320 db eval { 1321 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 1322 WHERE t2.a=41 1323 ORDER BY t1.rowid DESC 1324 } 1325 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41} 1326 do_test boundary3-2.7.lt.1 { 1327 db eval { 1328 SELECT t2.a FROM t1 JOIN t2 USING(a) 1329 WHERE t1.rowid < 2 ORDER BY t2.a 1330 } 1331 } {1 2 11 21 29 32 33 37 38 44 47 52 53 54 55 58 59 60 63 64} 1332 do_test boundary3-2.7.lt.2 { 1333 db eval { 1334 SELECT t2.a FROM t2 NATURAL JOIN t1 1335 WHERE t1.rowid < 2 ORDER BY t1.a DESC 1336 } 1337 } {64 63 60 59 58 55 54 53 52 47 44 38 37 33 32 29 21 11 2 1} 1338 do_test boundary3-2.7.lt.3 { 1339 db eval { 1340 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 1341 WHERE t2.a=41 1342 ORDER BY t1.rowid 1343 } 1344 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60} 1345 do_test boundary3-2.7.lt.4 { 1346 db eval { 1347 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 1348 WHERE t2.a=41 1349 ORDER BY t1.rowid DESC 1350 } 1351 } {60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 1352 do_test boundary3-2.7.lt.5 { 1353 db eval { 1354 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 1355 WHERE t2.a=41 1356 ORDER BY x 1357 } 1358 } {59 60 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 1359 do_test boundary3-2.7.lt.10 { 1360 db eval { 1361 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 1362 WHERE t2.a=41 1363 ORDER BY t1.rowid 1364 } 1365 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60} 1366 do_test boundary3-2.7.lt.11 { 1367 db eval { 1368 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 1369 WHERE t2.a=41 1370 ORDER BY t1.rowid DESC 1371 } 1372 } {60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 1373 do_test boundary3-2.7.le.1 { 1374 db eval { 1375 SELECT t2.a FROM t1 JOIN t2 USING(a) 1376 WHERE t1.rowid <= 2 ORDER BY t2.a 1377 } 1378 } {1 2 11 21 29 32 33 37 38 41 44 47 52 53 54 55 58 59 60 63 64} 1379 do_test boundary3-2.7.le.2 { 1380 db eval { 1381 SELECT t2.a FROM t2 NATURAL JOIN t1 1382 WHERE t1.rowid <= 2 ORDER BY t1.a DESC 1383 } 1384 } {64 63 60 59 58 55 54 53 52 47 44 41 38 37 33 32 29 21 11 2 1} 1385 do_test boundary3-2.7.le.3 { 1386 db eval { 1387 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 1388 WHERE t2.a=41 1389 ORDER BY t1.rowid 1390 } 1391 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41} 1392 do_test boundary3-2.7.le.4 { 1393 db eval { 1394 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 1395 WHERE t2.a=41 1396 ORDER BY t1.rowid DESC 1397 } 1398 } {41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 1399 do_test boundary3-2.7.le.5 { 1400 db eval { 1401 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 1402 WHERE t2.a=41 1403 ORDER BY x 1404 } 1405 } {59 60 41 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 1406 do_test boundary3-2.7.le.10 { 1407 db eval { 1408 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 1409 WHERE t2.a=41 1410 ORDER BY t1.rowid 1411 } 1412 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41} 1413 do_test boundary3-2.7.le.11 { 1414 db eval { 1415 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 1416 WHERE t2.a=41 1417 ORDER BY t1.rowid DESC 1418 } 1419 } {41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 1420 do_test boundary3-2.8.1 { 1421 db eval { 1422 SELECT t1.* FROM t1, t2 WHERE t1.rowid=4 AND t2.a=t1.a 1423 } 1424 } {31 0000000000000004} 1425 do_test boundary3-2.8.2 { 1426 db eval { 1427 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000000000004' 1428 } 1429 } {4 31} 1430 do_test boundary3-2.8.3 { 1431 db eval { 1432 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=31 1433 } 1434 } {4 0000000000000004} 1435 do_test boundary3-2.8.gt.1 { 1436 db eval { 1437 SELECT t2.a FROM t1 JOIN t2 USING(a) 1438 WHERE t1.rowid > 4 ORDER BY t2.a 1439 } 1440 } {3 4 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 34 35 36 39 40 42 43 45 46 48 49 50 51 56 57 61 62} 1441 do_test boundary3-2.8.gt.2 { 1442 db eval { 1443 SELECT t2.a FROM t2 NATURAL JOIN t1 1444 WHERE t1.rowid > 4 ORDER BY t1.a DESC 1445 } 1446 } {62 61 57 56 51 50 49 48 46 45 43 42 40 39 36 35 34 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 4 3} 1447 do_test boundary3-2.8.gt.3 { 1448 db eval { 1449 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 1450 WHERE t2.a=31 1451 ORDER BY t1.rowid 1452 } 1453 } {4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1454 do_test boundary3-2.8.gt.4 { 1455 db eval { 1456 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 1457 WHERE t2.a=31 1458 ORDER BY t1.rowid DESC 1459 } 1460 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4} 1461 do_test boundary3-2.8.gt.5 { 1462 db eval { 1463 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 1464 WHERE t2.a=31 1465 ORDER BY x 1466 } 1467 } {4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1468 do_test boundary3-2.8.gt.10 { 1469 db eval { 1470 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 1471 WHERE t2.a=31 1472 ORDER BY t1.rowid 1473 } 1474 } {4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1475 do_test boundary3-2.8.gt.11 { 1476 db eval { 1477 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 1478 WHERE t2.a=31 1479 ORDER BY t1.rowid DESC 1480 } 1481 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4} 1482 do_test boundary3-2.8.ge.1 { 1483 db eval { 1484 SELECT t2.a FROM t1 JOIN t2 USING(a) 1485 WHERE t1.rowid >= 4 ORDER BY t2.a 1486 } 1487 } {3 4 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 34 35 36 39 40 42 43 45 46 48 49 50 51 56 57 61 62} 1488 do_test boundary3-2.8.ge.2 { 1489 db eval { 1490 SELECT t2.a FROM t2 NATURAL JOIN t1 1491 WHERE t1.rowid >= 4 ORDER BY t1.a DESC 1492 } 1493 } {62 61 57 56 51 50 49 48 46 45 43 42 40 39 36 35 34 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 4 3} 1494 do_test boundary3-2.8.ge.3 { 1495 db eval { 1496 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 1497 WHERE t2.a=31 1498 ORDER BY t1.rowid 1499 } 1500 } {31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1501 do_test boundary3-2.8.ge.4 { 1502 db eval { 1503 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 1504 WHERE t2.a=31 1505 ORDER BY t1.rowid DESC 1506 } 1507 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31} 1508 do_test boundary3-2.8.ge.5 { 1509 db eval { 1510 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 1511 WHERE t2.a=31 1512 ORDER BY x 1513 } 1514 } {31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1515 do_test boundary3-2.8.ge.10 { 1516 db eval { 1517 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 1518 WHERE t2.a=31 1519 ORDER BY t1.rowid 1520 } 1521 } {31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1522 do_test boundary3-2.8.ge.11 { 1523 db eval { 1524 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 1525 WHERE t2.a=31 1526 ORDER BY t1.rowid DESC 1527 } 1528 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31} 1529 do_test boundary3-2.8.lt.1 { 1530 db eval { 1531 SELECT t2.a FROM t1 JOIN t2 USING(a) 1532 WHERE t1.rowid < 4 ORDER BY t2.a 1533 } 1534 } {1 2 5 11 21 29 32 33 37 38 41 44 47 52 53 54 55 58 59 60 63 64} 1535 do_test boundary3-2.8.lt.2 { 1536 db eval { 1537 SELECT t2.a FROM t2 NATURAL JOIN t1 1538 WHERE t1.rowid < 4 ORDER BY t1.a DESC 1539 } 1540 } {64 63 60 59 58 55 54 53 52 47 44 41 38 37 33 32 29 21 11 5 2 1} 1541 do_test boundary3-2.8.lt.3 { 1542 db eval { 1543 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 1544 WHERE t2.a=31 1545 ORDER BY t1.rowid 1546 } 1547 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5} 1548 do_test boundary3-2.8.lt.4 { 1549 db eval { 1550 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 1551 WHERE t2.a=31 1552 ORDER BY t1.rowid DESC 1553 } 1554 } {5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 1555 do_test boundary3-2.8.lt.5 { 1556 db eval { 1557 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 1558 WHERE t2.a=31 1559 ORDER BY x 1560 } 1561 } {59 60 41 5 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 1562 do_test boundary3-2.8.lt.10 { 1563 db eval { 1564 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 1565 WHERE t2.a=31 1566 ORDER BY t1.rowid 1567 } 1568 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5} 1569 do_test boundary3-2.8.lt.11 { 1570 db eval { 1571 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 1572 WHERE t2.a=31 1573 ORDER BY t1.rowid DESC 1574 } 1575 } {5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 1576 do_test boundary3-2.8.le.1 { 1577 db eval { 1578 SELECT t2.a FROM t1 JOIN t2 USING(a) 1579 WHERE t1.rowid <= 4 ORDER BY t2.a 1580 } 1581 } {1 2 5 11 21 29 31 32 33 37 38 41 44 47 52 53 54 55 58 59 60 63 64} 1582 do_test boundary3-2.8.le.2 { 1583 db eval { 1584 SELECT t2.a FROM t2 NATURAL JOIN t1 1585 WHERE t1.rowid <= 4 ORDER BY t1.a DESC 1586 } 1587 } {64 63 60 59 58 55 54 53 52 47 44 41 38 37 33 32 31 29 21 11 5 2 1} 1588 do_test boundary3-2.8.le.3 { 1589 db eval { 1590 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 1591 WHERE t2.a=31 1592 ORDER BY t1.rowid 1593 } 1594 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31} 1595 do_test boundary3-2.8.le.4 { 1596 db eval { 1597 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 1598 WHERE t2.a=31 1599 ORDER BY t1.rowid DESC 1600 } 1601 } {31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 1602 do_test boundary3-2.8.le.5 { 1603 db eval { 1604 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 1605 WHERE t2.a=31 1606 ORDER BY x 1607 } 1608 } {59 60 41 5 31 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 1609 do_test boundary3-2.8.le.10 { 1610 db eval { 1611 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 1612 WHERE t2.a=31 1613 ORDER BY t1.rowid 1614 } 1615 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31} 1616 do_test boundary3-2.8.le.11 { 1617 db eval { 1618 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 1619 WHERE t2.a=31 1620 ORDER BY t1.rowid DESC 1621 } 1622 } {31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 1623 do_test boundary3-2.9.1 { 1624 db eval { 1625 SELECT t1.* FROM t1, t2 WHERE t1.rowid=562949953421311 AND t2.a=t1.a 1626 } 1627 } {13 0001ffffffffffff} 1628 do_test boundary3-2.9.2 { 1629 db eval { 1630 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0001ffffffffffff' 1631 } 1632 } {562949953421311 13} 1633 do_test boundary3-2.9.3 { 1634 db eval { 1635 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=13 1636 } 1637 } {562949953421311 0001ffffffffffff} 1638 do_test boundary3-2.9.gt.1 { 1639 db eval { 1640 SELECT t2.a FROM t1 JOIN t2 USING(a) 1641 WHERE t1.rowid > 562949953421311 ORDER BY t2.a 1642 } 1643 } {3 17 27 28 43 45} 1644 do_test boundary3-2.9.gt.2 { 1645 db eval { 1646 SELECT t2.a FROM t2 NATURAL JOIN t1 1647 WHERE t1.rowid > 562949953421311 ORDER BY t1.a DESC 1648 } 1649 } {45 43 28 27 17 3} 1650 do_test boundary3-2.9.gt.3 { 1651 db eval { 1652 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 1653 WHERE t2.a=13 1654 ORDER BY t1.rowid 1655 } 1656 } {43 27 45 17 28 3} 1657 do_test boundary3-2.9.gt.4 { 1658 db eval { 1659 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 1660 WHERE t2.a=13 1661 ORDER BY t1.rowid DESC 1662 } 1663 } {3 28 17 45 27 43} 1664 do_test boundary3-2.9.gt.5 { 1665 db eval { 1666 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 1667 WHERE t2.a=13 1668 ORDER BY x 1669 } 1670 } {43 27 45 17 28 3} 1671 do_test boundary3-2.9.ge.1 { 1672 db eval { 1673 SELECT t2.a FROM t1 JOIN t2 USING(a) 1674 WHERE t1.rowid >= 562949953421311 ORDER BY t2.a 1675 } 1676 } {3 13 17 27 28 43 45} 1677 do_test boundary3-2.9.ge.2 { 1678 db eval { 1679 SELECT t2.a FROM t2 NATURAL JOIN t1 1680 WHERE t1.rowid >= 562949953421311 ORDER BY t1.a DESC 1681 } 1682 } {45 43 28 27 17 13 3} 1683 do_test boundary3-2.9.ge.3 { 1684 db eval { 1685 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 1686 WHERE t2.a=13 1687 ORDER BY t1.rowid 1688 } 1689 } {13 43 27 45 17 28 3} 1690 do_test boundary3-2.9.ge.4 { 1691 db eval { 1692 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 1693 WHERE t2.a=13 1694 ORDER BY t1.rowid DESC 1695 } 1696 } {3 28 17 45 27 43 13} 1697 do_test boundary3-2.9.ge.5 { 1698 db eval { 1699 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 1700 WHERE t2.a=13 1701 ORDER BY x 1702 } 1703 } {13 43 27 45 17 28 3} 1704 do_test boundary3-2.9.lt.1 { 1705 db eval { 1706 SELECT t2.a FROM t1 JOIN t2 USING(a) 1707 WHERE t1.rowid < 562949953421311 ORDER BY t2.a 1708 } 1709 } {1 2 4 5 6 7 8 9 10 11 12 14 15 16 18 19 20 21 22 23 24 25 26 29 30 31 32 33 34 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64} 1710 do_test boundary3-2.9.lt.2 { 1711 db eval { 1712 SELECT t2.a FROM t2 NATURAL JOIN t1 1713 WHERE t1.rowid < 562949953421311 ORDER BY t1.a DESC 1714 } 1715 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 34 33 32 31 30 29 26 25 24 23 22 21 20 19 18 16 15 14 12 11 10 9 8 7 6 5 4 2 1} 1716 do_test boundary3-2.9.lt.3 { 1717 db eval { 1718 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 1719 WHERE t2.a=13 1720 ORDER BY t1.rowid 1721 } 1722 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26} 1723 do_test boundary3-2.9.lt.4 { 1724 db eval { 1725 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 1726 WHERE t2.a=13 1727 ORDER BY t1.rowid DESC 1728 } 1729 } {26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 1730 do_test boundary3-2.9.lt.5 { 1731 db eval { 1732 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 1733 WHERE t2.a=13 1734 ORDER BY x 1735 } 1736 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 1737 do_test boundary3-2.9.le.1 { 1738 db eval { 1739 SELECT t2.a FROM t1 JOIN t2 USING(a) 1740 WHERE t1.rowid <= 562949953421311 ORDER BY t2.a 1741 } 1742 } {1 2 4 5 6 7 8 9 10 11 12 13 14 15 16 18 19 20 21 22 23 24 25 26 29 30 31 32 33 34 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64} 1743 do_test boundary3-2.9.le.2 { 1744 db eval { 1745 SELECT t2.a FROM t2 NATURAL JOIN t1 1746 WHERE t1.rowid <= 562949953421311 ORDER BY t1.a DESC 1747 } 1748 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 34 33 32 31 30 29 26 25 24 23 22 21 20 19 18 16 15 14 13 12 11 10 9 8 7 6 5 4 2 1} 1749 do_test boundary3-2.9.le.3 { 1750 db eval { 1751 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 1752 WHERE t2.a=13 1753 ORDER BY t1.rowid 1754 } 1755 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13} 1756 do_test boundary3-2.9.le.4 { 1757 db eval { 1758 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 1759 WHERE t2.a=13 1760 ORDER BY t1.rowid DESC 1761 } 1762 } {13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 1763 do_test boundary3-2.9.le.5 { 1764 db eval { 1765 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 1766 WHERE t2.a=13 1767 ORDER BY x 1768 } 1769 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 1770 do_test boundary3-2.10.1 { 1771 db eval { 1772 SELECT t1.* FROM t1, t2 WHERE t1.rowid=256 AND t2.a=t1.a 1773 } 1774 } {61 0000000000000100} 1775 do_test boundary3-2.10.2 { 1776 db eval { 1777 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000000000100' 1778 } 1779 } {256 61} 1780 do_test boundary3-2.10.3 { 1781 db eval { 1782 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=61 1783 } 1784 } {256 0000000000000100} 1785 do_test boundary3-2.10.gt.1 { 1786 db eval { 1787 SELECT t2.a FROM t1 JOIN t2 USING(a) 1788 WHERE t1.rowid > 256 ORDER BY t2.a 1789 } 1790 } {3 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 34 35 36 39 40 42 43 45 46 48 50 51 56 57 62} 1791 do_test boundary3-2.10.gt.2 { 1792 db eval { 1793 SELECT t2.a FROM t2 NATURAL JOIN t1 1794 WHERE t1.rowid > 256 ORDER BY t1.a DESC 1795 } 1796 } {62 57 56 51 50 48 46 45 43 42 40 39 36 35 34 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 3} 1797 do_test boundary3-2.10.gt.3 { 1798 db eval { 1799 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 1800 WHERE t2.a=61 1801 ORDER BY t1.rowid 1802 } 1803 } {8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1804 do_test boundary3-2.10.gt.4 { 1805 db eval { 1806 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 1807 WHERE t2.a=61 1808 ORDER BY t1.rowid DESC 1809 } 1810 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8} 1811 do_test boundary3-2.10.gt.5 { 1812 db eval { 1813 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 1814 WHERE t2.a=61 1815 ORDER BY x 1816 } 1817 } {8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1818 do_test boundary3-2.10.gt.10 { 1819 db eval { 1820 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 1821 WHERE t2.a=61 1822 ORDER BY t1.rowid 1823 } 1824 } {8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1825 do_test boundary3-2.10.gt.11 { 1826 db eval { 1827 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 1828 WHERE t2.a=61 1829 ORDER BY t1.rowid DESC 1830 } 1831 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8} 1832 do_test boundary3-2.10.ge.1 { 1833 db eval { 1834 SELECT t2.a FROM t1 JOIN t2 USING(a) 1835 WHERE t1.rowid >= 256 ORDER BY t2.a 1836 } 1837 } {3 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 34 35 36 39 40 42 43 45 46 48 50 51 56 57 61 62} 1838 do_test boundary3-2.10.ge.2 { 1839 db eval { 1840 SELECT t2.a FROM t2 NATURAL JOIN t1 1841 WHERE t1.rowid >= 256 ORDER BY t1.a DESC 1842 } 1843 } {62 61 57 56 51 50 48 46 45 43 42 40 39 36 35 34 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 3} 1844 do_test boundary3-2.10.ge.3 { 1845 db eval { 1846 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 1847 WHERE t2.a=61 1848 ORDER BY t1.rowid 1849 } 1850 } {61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1851 do_test boundary3-2.10.ge.4 { 1852 db eval { 1853 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 1854 WHERE t2.a=61 1855 ORDER BY t1.rowid DESC 1856 } 1857 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61} 1858 do_test boundary3-2.10.ge.5 { 1859 db eval { 1860 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 1861 WHERE t2.a=61 1862 ORDER BY x 1863 } 1864 } {61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1865 do_test boundary3-2.10.ge.10 { 1866 db eval { 1867 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 1868 WHERE t2.a=61 1869 ORDER BY t1.rowid 1870 } 1871 } {61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 1872 do_test boundary3-2.10.ge.11 { 1873 db eval { 1874 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 1875 WHERE t2.a=61 1876 ORDER BY t1.rowid DESC 1877 } 1878 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61} 1879 do_test boundary3-2.10.lt.1 { 1880 db eval { 1881 SELECT t2.a FROM t1 JOIN t2 USING(a) 1882 WHERE t1.rowid < 256 ORDER BY t2.a 1883 } 1884 } {1 2 4 5 11 21 29 30 31 32 33 37 38 41 44 47 49 52 53 54 55 58 59 60 63 64} 1885 do_test boundary3-2.10.lt.2 { 1886 db eval { 1887 SELECT t2.a FROM t2 NATURAL JOIN t1 1888 WHERE t1.rowid < 256 ORDER BY t1.a DESC 1889 } 1890 } {64 63 60 59 58 55 54 53 52 49 47 44 41 38 37 33 32 31 30 29 21 11 5 4 2 1} 1891 do_test boundary3-2.10.lt.3 { 1892 db eval { 1893 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 1894 WHERE t2.a=61 1895 ORDER BY t1.rowid 1896 } 1897 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30} 1898 do_test boundary3-2.10.lt.4 { 1899 db eval { 1900 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 1901 WHERE t2.a=61 1902 ORDER BY t1.rowid DESC 1903 } 1904 } {30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 1905 do_test boundary3-2.10.lt.5 { 1906 db eval { 1907 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 1908 WHERE t2.a=61 1909 ORDER BY x 1910 } 1911 } {59 60 41 5 31 4 49 30 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 1912 do_test boundary3-2.10.lt.10 { 1913 db eval { 1914 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 1915 WHERE t2.a=61 1916 ORDER BY t1.rowid 1917 } 1918 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30} 1919 do_test boundary3-2.10.lt.11 { 1920 db eval { 1921 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 1922 WHERE t2.a=61 1923 ORDER BY t1.rowid DESC 1924 } 1925 } {30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 1926 do_test boundary3-2.10.le.1 { 1927 db eval { 1928 SELECT t2.a FROM t1 JOIN t2 USING(a) 1929 WHERE t1.rowid <= 256 ORDER BY t2.a 1930 } 1931 } {1 2 4 5 11 21 29 30 31 32 33 37 38 41 44 47 49 52 53 54 55 58 59 60 61 63 64} 1932 do_test boundary3-2.10.le.2 { 1933 db eval { 1934 SELECT t2.a FROM t2 NATURAL JOIN t1 1935 WHERE t1.rowid <= 256 ORDER BY t1.a DESC 1936 } 1937 } {64 63 61 60 59 58 55 54 53 52 49 47 44 41 38 37 33 32 31 30 29 21 11 5 4 2 1} 1938 do_test boundary3-2.10.le.3 { 1939 db eval { 1940 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 1941 WHERE t2.a=61 1942 ORDER BY t1.rowid 1943 } 1944 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61} 1945 do_test boundary3-2.10.le.4 { 1946 db eval { 1947 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 1948 WHERE t2.a=61 1949 ORDER BY t1.rowid DESC 1950 } 1951 } {61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 1952 do_test boundary3-2.10.le.5 { 1953 db eval { 1954 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 1955 WHERE t2.a=61 1956 ORDER BY x 1957 } 1958 } {59 60 41 5 31 4 49 30 61 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 1959 do_test boundary3-2.10.le.10 { 1960 db eval { 1961 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 1962 WHERE t2.a=61 1963 ORDER BY t1.rowid 1964 } 1965 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61} 1966 do_test boundary3-2.10.le.11 { 1967 db eval { 1968 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 1969 WHERE t2.a=61 1970 ORDER BY t1.rowid DESC 1971 } 1972 } {61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 1973 do_test boundary3-2.11.1 { 1974 db eval { 1975 SELECT t1.* FROM t1, t2 WHERE t1.rowid=34359738368 AND t2.a=t1.a 1976 } 1977 } {22 0000000800000000} 1978 do_test boundary3-2.11.2 { 1979 db eval { 1980 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000800000000' 1981 } 1982 } {34359738368 22} 1983 do_test boundary3-2.11.3 { 1984 db eval { 1985 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=22 1986 } 1987 } {34359738368 0000000800000000} 1988 do_test boundary3-2.11.gt.1 { 1989 db eval { 1990 SELECT t2.a FROM t1 JOIN t2 USING(a) 1991 WHERE t1.rowid > 34359738368 ORDER BY t2.a 1992 } 1993 } {3 7 10 13 17 19 25 26 27 28 34 35 43 45 46 56 57} 1994 do_test boundary3-2.11.gt.2 { 1995 db eval { 1996 SELECT t2.a FROM t2 NATURAL JOIN t1 1997 WHERE t1.rowid > 34359738368 ORDER BY t1.a DESC 1998 } 1999 } {57 56 46 45 43 35 34 28 27 26 25 19 17 13 10 7 3} 2000 do_test boundary3-2.11.gt.3 { 2001 db eval { 2002 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 2003 WHERE t2.a=22 2004 ORDER BY t1.rowid 2005 } 2006 } {46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2007 do_test boundary3-2.11.gt.4 { 2008 db eval { 2009 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 2010 WHERE t2.a=22 2011 ORDER BY t1.rowid DESC 2012 } 2013 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46} 2014 do_test boundary3-2.11.gt.5 { 2015 db eval { 2016 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 2017 WHERE t2.a=22 2018 ORDER BY x 2019 } 2020 } {46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2021 do_test boundary3-2.11.gt.10 { 2022 db eval { 2023 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 2024 WHERE t2.a=22 2025 ORDER BY t1.rowid 2026 } 2027 } {46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2028 do_test boundary3-2.11.gt.11 { 2029 db eval { 2030 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 2031 WHERE t2.a=22 2032 ORDER BY t1.rowid DESC 2033 } 2034 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46} 2035 do_test boundary3-2.11.ge.1 { 2036 db eval { 2037 SELECT t2.a FROM t1 JOIN t2 USING(a) 2038 WHERE t1.rowid >= 34359738368 ORDER BY t2.a 2039 } 2040 } {3 7 10 13 17 19 22 25 26 27 28 34 35 43 45 46 56 57} 2041 do_test boundary3-2.11.ge.2 { 2042 db eval { 2043 SELECT t2.a FROM t2 NATURAL JOIN t1 2044 WHERE t1.rowid >= 34359738368 ORDER BY t1.a DESC 2045 } 2046 } {57 56 46 45 43 35 34 28 27 26 25 22 19 17 13 10 7 3} 2047 do_test boundary3-2.11.ge.3 { 2048 db eval { 2049 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 2050 WHERE t2.a=22 2051 ORDER BY t1.rowid 2052 } 2053 } {22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2054 do_test boundary3-2.11.ge.4 { 2055 db eval { 2056 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 2057 WHERE t2.a=22 2058 ORDER BY t1.rowid DESC 2059 } 2060 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22} 2061 do_test boundary3-2.11.ge.5 { 2062 db eval { 2063 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 2064 WHERE t2.a=22 2065 ORDER BY x 2066 } 2067 } {22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2068 do_test boundary3-2.11.ge.10 { 2069 db eval { 2070 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 2071 WHERE t2.a=22 2072 ORDER BY t1.rowid 2073 } 2074 } {22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2075 do_test boundary3-2.11.ge.11 { 2076 db eval { 2077 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 2078 WHERE t2.a=22 2079 ORDER BY t1.rowid DESC 2080 } 2081 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22} 2082 do_test boundary3-2.11.lt.1 { 2083 db eval { 2084 SELECT t2.a FROM t1 JOIN t2 USING(a) 2085 WHERE t1.rowid < 34359738368 ORDER BY t2.a 2086 } 2087 } {1 2 4 5 6 8 9 11 12 14 15 16 18 20 21 23 24 29 30 31 32 33 36 37 38 39 40 41 42 44 47 48 49 50 51 52 53 54 55 58 59 60 61 62 63 64} 2088 do_test boundary3-2.11.lt.2 { 2089 db eval { 2090 SELECT t2.a FROM t2 NATURAL JOIN t1 2091 WHERE t1.rowid < 34359738368 ORDER BY t1.a DESC 2092 } 2093 } {64 63 62 61 60 59 58 55 54 53 52 51 50 49 48 47 44 42 41 40 39 38 37 36 33 32 31 30 29 24 23 21 20 18 16 15 14 12 11 9 8 6 5 4 2 1} 2094 do_test boundary3-2.11.lt.3 { 2095 db eval { 2096 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 2097 WHERE t2.a=22 2098 ORDER BY t1.rowid 2099 } 2100 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39} 2101 do_test boundary3-2.11.lt.4 { 2102 db eval { 2103 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 2104 WHERE t2.a=22 2105 ORDER BY t1.rowid DESC 2106 } 2107 } {39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 2108 do_test boundary3-2.11.lt.5 { 2109 db eval { 2110 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 2111 WHERE t2.a=22 2112 ORDER BY x 2113 } 2114 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 2115 do_test boundary3-2.11.lt.10 { 2116 db eval { 2117 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 2118 WHERE t2.a=22 2119 ORDER BY t1.rowid 2120 } 2121 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39} 2122 do_test boundary3-2.11.lt.11 { 2123 db eval { 2124 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 2125 WHERE t2.a=22 2126 ORDER BY t1.rowid DESC 2127 } 2128 } {39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 2129 do_test boundary3-2.11.le.1 { 2130 db eval { 2131 SELECT t2.a FROM t1 JOIN t2 USING(a) 2132 WHERE t1.rowid <= 34359738368 ORDER BY t2.a 2133 } 2134 } {1 2 4 5 6 8 9 11 12 14 15 16 18 20 21 22 23 24 29 30 31 32 33 36 37 38 39 40 41 42 44 47 48 49 50 51 52 53 54 55 58 59 60 61 62 63 64} 2135 do_test boundary3-2.11.le.2 { 2136 db eval { 2137 SELECT t2.a FROM t2 NATURAL JOIN t1 2138 WHERE t1.rowid <= 34359738368 ORDER BY t1.a DESC 2139 } 2140 } {64 63 62 61 60 59 58 55 54 53 52 51 50 49 48 47 44 42 41 40 39 38 37 36 33 32 31 30 29 24 23 22 21 20 18 16 15 14 12 11 9 8 6 5 4 2 1} 2141 do_test boundary3-2.11.le.3 { 2142 db eval { 2143 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 2144 WHERE t2.a=22 2145 ORDER BY t1.rowid 2146 } 2147 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22} 2148 do_test boundary3-2.11.le.4 { 2149 db eval { 2150 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 2151 WHERE t2.a=22 2152 ORDER BY t1.rowid DESC 2153 } 2154 } {22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 2155 do_test boundary3-2.11.le.5 { 2156 db eval { 2157 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 2158 WHERE t2.a=22 2159 ORDER BY x 2160 } 2161 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 2162 do_test boundary3-2.11.le.10 { 2163 db eval { 2164 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 2165 WHERE t2.a=22 2166 ORDER BY t1.rowid 2167 } 2168 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22} 2169 do_test boundary3-2.11.le.11 { 2170 db eval { 2171 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 2172 WHERE t2.a=22 2173 ORDER BY t1.rowid DESC 2174 } 2175 } {22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 2176 do_test boundary3-2.12.1 { 2177 db eval { 2178 SELECT t1.* FROM t1, t2 WHERE t1.rowid=65536 AND t2.a=t1.a 2179 } 2180 } {62 0000000000010000} 2181 do_test boundary3-2.12.2 { 2182 db eval { 2183 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000000010000' 2184 } 2185 } {65536 62} 2186 do_test boundary3-2.12.3 { 2187 db eval { 2188 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=62 2189 } 2190 } {65536 0000000000010000} 2191 do_test boundary3-2.12.gt.1 { 2192 db eval { 2193 SELECT t2.a FROM t1 JOIN t2 USING(a) 2194 WHERE t1.rowid > 65536 ORDER BY t2.a 2195 } 2196 } {3 6 7 9 10 12 13 14 15 17 18 19 20 22 24 25 26 27 28 34 35 36 39 40 42 43 45 46 51 56 57} 2197 do_test boundary3-2.12.gt.2 { 2198 db eval { 2199 SELECT t2.a FROM t2 NATURAL JOIN t1 2200 WHERE t1.rowid > 65536 ORDER BY t1.a DESC 2201 } 2202 } {57 56 51 46 45 43 42 40 39 36 35 34 28 27 26 25 24 22 20 19 18 17 15 14 13 12 10 9 7 6 3} 2203 do_test boundary3-2.12.gt.3 { 2204 db eval { 2205 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 2206 WHERE t2.a=62 2207 ORDER BY t1.rowid 2208 } 2209 } {15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2210 do_test boundary3-2.12.gt.4 { 2211 db eval { 2212 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 2213 WHERE t2.a=62 2214 ORDER BY t1.rowid DESC 2215 } 2216 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15} 2217 do_test boundary3-2.12.gt.5 { 2218 db eval { 2219 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 2220 WHERE t2.a=62 2221 ORDER BY x 2222 } 2223 } {15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2224 do_test boundary3-2.12.gt.10 { 2225 db eval { 2226 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 2227 WHERE t2.a=62 2228 ORDER BY t1.rowid 2229 } 2230 } {15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2231 do_test boundary3-2.12.gt.11 { 2232 db eval { 2233 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 2234 WHERE t2.a=62 2235 ORDER BY t1.rowid DESC 2236 } 2237 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15} 2238 do_test boundary3-2.12.ge.1 { 2239 db eval { 2240 SELECT t2.a FROM t1 JOIN t2 USING(a) 2241 WHERE t1.rowid >= 65536 ORDER BY t2.a 2242 } 2243 } {3 6 7 9 10 12 13 14 15 17 18 19 20 22 24 25 26 27 28 34 35 36 39 40 42 43 45 46 51 56 57 62} 2244 do_test boundary3-2.12.ge.2 { 2245 db eval { 2246 SELECT t2.a FROM t2 NATURAL JOIN t1 2247 WHERE t1.rowid >= 65536 ORDER BY t1.a DESC 2248 } 2249 } {62 57 56 51 46 45 43 42 40 39 36 35 34 28 27 26 25 24 22 20 19 18 17 15 14 13 12 10 9 7 6 3} 2250 do_test boundary3-2.12.ge.3 { 2251 db eval { 2252 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 2253 WHERE t2.a=62 2254 ORDER BY t1.rowid 2255 } 2256 } {62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2257 do_test boundary3-2.12.ge.4 { 2258 db eval { 2259 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 2260 WHERE t2.a=62 2261 ORDER BY t1.rowid DESC 2262 } 2263 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62} 2264 do_test boundary3-2.12.ge.5 { 2265 db eval { 2266 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 2267 WHERE t2.a=62 2268 ORDER BY x 2269 } 2270 } {62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2271 do_test boundary3-2.12.ge.10 { 2272 db eval { 2273 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 2274 WHERE t2.a=62 2275 ORDER BY t1.rowid 2276 } 2277 } {62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2278 do_test boundary3-2.12.ge.11 { 2279 db eval { 2280 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 2281 WHERE t2.a=62 2282 ORDER BY t1.rowid DESC 2283 } 2284 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62} 2285 do_test boundary3-2.12.lt.1 { 2286 db eval { 2287 SELECT t2.a FROM t1 JOIN t2 USING(a) 2288 WHERE t1.rowid < 65536 ORDER BY t2.a 2289 } 2290 } {1 2 4 5 8 11 16 21 23 29 30 31 32 33 37 38 41 44 47 48 49 50 52 53 54 55 58 59 60 61 63 64} 2291 do_test boundary3-2.12.lt.2 { 2292 db eval { 2293 SELECT t2.a FROM t2 NATURAL JOIN t1 2294 WHERE t1.rowid < 65536 ORDER BY t1.a DESC 2295 } 2296 } {64 63 61 60 59 58 55 54 53 52 50 49 48 47 44 41 38 37 33 32 31 30 29 23 21 16 11 8 5 4 2 1} 2297 do_test boundary3-2.12.lt.3 { 2298 db eval { 2299 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 2300 WHERE t2.a=62 2301 ORDER BY t1.rowid 2302 } 2303 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48} 2304 do_test boundary3-2.12.lt.4 { 2305 db eval { 2306 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 2307 WHERE t2.a=62 2308 ORDER BY t1.rowid DESC 2309 } 2310 } {48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 2311 do_test boundary3-2.12.lt.5 { 2312 db eval { 2313 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 2314 WHERE t2.a=62 2315 ORDER BY x 2316 } 2317 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 2318 do_test boundary3-2.12.lt.10 { 2319 db eval { 2320 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 2321 WHERE t2.a=62 2322 ORDER BY t1.rowid 2323 } 2324 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48} 2325 do_test boundary3-2.12.lt.11 { 2326 db eval { 2327 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 2328 WHERE t2.a=62 2329 ORDER BY t1.rowid DESC 2330 } 2331 } {48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 2332 do_test boundary3-2.12.le.1 { 2333 db eval { 2334 SELECT t2.a FROM t1 JOIN t2 USING(a) 2335 WHERE t1.rowid <= 65536 ORDER BY t2.a 2336 } 2337 } {1 2 4 5 8 11 16 21 23 29 30 31 32 33 37 38 41 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 2338 do_test boundary3-2.12.le.2 { 2339 db eval { 2340 SELECT t2.a FROM t2 NATURAL JOIN t1 2341 WHERE t1.rowid <= 65536 ORDER BY t1.a DESC 2342 } 2343 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 41 38 37 33 32 31 30 29 23 21 16 11 8 5 4 2 1} 2344 do_test boundary3-2.12.le.3 { 2345 db eval { 2346 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 2347 WHERE t2.a=62 2348 ORDER BY t1.rowid 2349 } 2350 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62} 2351 do_test boundary3-2.12.le.4 { 2352 db eval { 2353 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 2354 WHERE t2.a=62 2355 ORDER BY t1.rowid DESC 2356 } 2357 } {62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 2358 do_test boundary3-2.12.le.5 { 2359 db eval { 2360 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 2361 WHERE t2.a=62 2362 ORDER BY x 2363 } 2364 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 2365 do_test boundary3-2.12.le.10 { 2366 db eval { 2367 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 2368 WHERE t2.a=62 2369 ORDER BY t1.rowid 2370 } 2371 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62} 2372 do_test boundary3-2.12.le.11 { 2373 db eval { 2374 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 2375 WHERE t2.a=62 2376 ORDER BY t1.rowid DESC 2377 } 2378 } {62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 2379 do_test boundary3-2.13.1 { 2380 db eval { 2381 SELECT t1.* FROM t1, t2 WHERE t1.rowid=268435456 AND t2.a=t1.a 2382 } 2383 } {40 0000000010000000} 2384 do_test boundary3-2.13.2 { 2385 db eval { 2386 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000010000000' 2387 } 2388 } {268435456 40} 2389 do_test boundary3-2.13.3 { 2390 db eval { 2391 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=40 2392 } 2393 } {268435456 0000000010000000} 2394 do_test boundary3-2.13.gt.1 { 2395 db eval { 2396 SELECT t2.a FROM t1 JOIN t2 USING(a) 2397 WHERE t1.rowid > 268435456 ORDER BY t2.a 2398 } 2399 } {3 7 10 13 14 17 19 20 22 25 26 27 28 34 35 36 39 43 45 46 51 56 57} 2400 do_test boundary3-2.13.gt.2 { 2401 db eval { 2402 SELECT t2.a FROM t2 NATURAL JOIN t1 2403 WHERE t1.rowid > 268435456 ORDER BY t1.a DESC 2404 } 2405 } {57 56 51 46 45 43 39 36 35 34 28 27 26 25 22 20 19 17 14 13 10 7 3} 2406 do_test boundary3-2.13.gt.3 { 2407 db eval { 2408 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 2409 WHERE t2.a=40 2410 ORDER BY t1.rowid 2411 } 2412 } {20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2413 do_test boundary3-2.13.gt.4 { 2414 db eval { 2415 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 2416 WHERE t2.a=40 2417 ORDER BY t1.rowid DESC 2418 } 2419 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20} 2420 do_test boundary3-2.13.gt.5 { 2421 db eval { 2422 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 2423 WHERE t2.a=40 2424 ORDER BY x 2425 } 2426 } {20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2427 do_test boundary3-2.13.gt.10 { 2428 db eval { 2429 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 2430 WHERE t2.a=40 2431 ORDER BY t1.rowid 2432 } 2433 } {20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2434 do_test boundary3-2.13.gt.11 { 2435 db eval { 2436 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 2437 WHERE t2.a=40 2438 ORDER BY t1.rowid DESC 2439 } 2440 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20} 2441 do_test boundary3-2.13.ge.1 { 2442 db eval { 2443 SELECT t2.a FROM t1 JOIN t2 USING(a) 2444 WHERE t1.rowid >= 268435456 ORDER BY t2.a 2445 } 2446 } {3 7 10 13 14 17 19 20 22 25 26 27 28 34 35 36 39 40 43 45 46 51 56 57} 2447 do_test boundary3-2.13.ge.2 { 2448 db eval { 2449 SELECT t2.a FROM t2 NATURAL JOIN t1 2450 WHERE t1.rowid >= 268435456 ORDER BY t1.a DESC 2451 } 2452 } {57 56 51 46 45 43 40 39 36 35 34 28 27 26 25 22 20 19 17 14 13 10 7 3} 2453 do_test boundary3-2.13.ge.3 { 2454 db eval { 2455 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 2456 WHERE t2.a=40 2457 ORDER BY t1.rowid 2458 } 2459 } {40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2460 do_test boundary3-2.13.ge.4 { 2461 db eval { 2462 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 2463 WHERE t2.a=40 2464 ORDER BY t1.rowid DESC 2465 } 2466 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40} 2467 do_test boundary3-2.13.ge.5 { 2468 db eval { 2469 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 2470 WHERE t2.a=40 2471 ORDER BY x 2472 } 2473 } {40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2474 do_test boundary3-2.13.ge.10 { 2475 db eval { 2476 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 2477 WHERE t2.a=40 2478 ORDER BY t1.rowid 2479 } 2480 } {40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2481 do_test boundary3-2.13.ge.11 { 2482 db eval { 2483 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 2484 WHERE t2.a=40 2485 ORDER BY t1.rowid DESC 2486 } 2487 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40} 2488 do_test boundary3-2.13.lt.1 { 2489 db eval { 2490 SELECT t2.a FROM t1 JOIN t2 USING(a) 2491 WHERE t1.rowid < 268435456 ORDER BY t2.a 2492 } 2493 } {1 2 4 5 6 8 9 11 12 15 16 18 21 23 24 29 30 31 32 33 37 38 41 42 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 2494 do_test boundary3-2.13.lt.2 { 2495 db eval { 2496 SELECT t2.a FROM t2 NATURAL JOIN t1 2497 WHERE t1.rowid < 268435456 ORDER BY t1.a DESC 2498 } 2499 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 42 41 38 37 33 32 31 30 29 24 23 21 18 16 15 12 11 9 8 6 5 4 2 1} 2500 do_test boundary3-2.13.lt.3 { 2501 db eval { 2502 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 2503 WHERE t2.a=40 2504 ORDER BY t1.rowid 2505 } 2506 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12} 2507 do_test boundary3-2.13.lt.4 { 2508 db eval { 2509 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 2510 WHERE t2.a=40 2511 ORDER BY t1.rowid DESC 2512 } 2513 } {12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 2514 do_test boundary3-2.13.lt.5 { 2515 db eval { 2516 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 2517 WHERE t2.a=40 2518 ORDER BY x 2519 } 2520 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 2521 do_test boundary3-2.13.lt.10 { 2522 db eval { 2523 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 2524 WHERE t2.a=40 2525 ORDER BY t1.rowid 2526 } 2527 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12} 2528 do_test boundary3-2.13.lt.11 { 2529 db eval { 2530 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 2531 WHERE t2.a=40 2532 ORDER BY t1.rowid DESC 2533 } 2534 } {12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 2535 do_test boundary3-2.13.le.1 { 2536 db eval { 2537 SELECT t2.a FROM t1 JOIN t2 USING(a) 2538 WHERE t1.rowid <= 268435456 ORDER BY t2.a 2539 } 2540 } {1 2 4 5 6 8 9 11 12 15 16 18 21 23 24 29 30 31 32 33 37 38 40 41 42 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 2541 do_test boundary3-2.13.le.2 { 2542 db eval { 2543 SELECT t2.a FROM t2 NATURAL JOIN t1 2544 WHERE t1.rowid <= 268435456 ORDER BY t1.a DESC 2545 } 2546 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 42 41 40 38 37 33 32 31 30 29 24 23 21 18 16 15 12 11 9 8 6 5 4 2 1} 2547 do_test boundary3-2.13.le.3 { 2548 db eval { 2549 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 2550 WHERE t2.a=40 2551 ORDER BY t1.rowid 2552 } 2553 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40} 2554 do_test boundary3-2.13.le.4 { 2555 db eval { 2556 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 2557 WHERE t2.a=40 2558 ORDER BY t1.rowid DESC 2559 } 2560 } {40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 2561 do_test boundary3-2.13.le.5 { 2562 db eval { 2563 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 2564 WHERE t2.a=40 2565 ORDER BY x 2566 } 2567 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 2568 do_test boundary3-2.13.le.10 { 2569 db eval { 2570 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 2571 WHERE t2.a=40 2572 ORDER BY t1.rowid 2573 } 2574 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40} 2575 do_test boundary3-2.13.le.11 { 2576 db eval { 2577 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 2578 WHERE t2.a=40 2579 ORDER BY t1.rowid DESC 2580 } 2581 } {40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 2582 do_test boundary3-2.14.1 { 2583 db eval { 2584 SELECT t1.* FROM t1, t2 WHERE t1.rowid=-140737488355328 AND t2.a=t1.a 2585 } 2586 } {44 ffff800000000000} 2587 do_test boundary3-2.14.2 { 2588 db eval { 2589 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='ffff800000000000' 2590 } 2591 } {-140737488355328 44} 2592 do_test boundary3-2.14.3 { 2593 db eval { 2594 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=44 2595 } 2596 } {-140737488355328 ffff800000000000} 2597 do_test boundary3-2.14.gt.1 { 2598 db eval { 2599 SELECT t2.a FROM t1 JOIN t2 USING(a) 2600 WHERE t1.rowid > -140737488355328 ORDER BY t2.a 2601 } 2602 } {1 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 45 46 47 48 49 50 51 52 53 54 56 57 58 59 60 61 62 63} 2603 do_test boundary3-2.14.gt.2 { 2604 db eval { 2605 SELECT t2.a FROM t2 NATURAL JOIN t1 2606 WHERE t1.rowid > -140737488355328 ORDER BY t1.a DESC 2607 } 2608 } {63 62 61 60 59 58 57 56 54 53 52 51 50 49 48 47 46 45 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 1} 2609 do_test boundary3-2.14.gt.3 { 2610 db eval { 2611 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 2612 WHERE t2.a=44 2613 ORDER BY t1.rowid 2614 } 2615 } {58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2616 do_test boundary3-2.14.gt.4 { 2617 db eval { 2618 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 2619 WHERE t2.a=44 2620 ORDER BY t1.rowid DESC 2621 } 2622 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58} 2623 do_test boundary3-2.14.gt.5 { 2624 db eval { 2625 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 2626 WHERE t2.a=44 2627 ORDER BY x 2628 } 2629 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 58 63 47 11 1 37 29 32 54 53 52 33 38} 2630 do_test boundary3-2.14.ge.1 { 2631 db eval { 2632 SELECT t2.a FROM t1 JOIN t2 USING(a) 2633 WHERE t1.rowid >= -140737488355328 ORDER BY t2.a 2634 } 2635 } {1 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 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 56 57 58 59 60 61 62 63} 2636 do_test boundary3-2.14.ge.2 { 2637 db eval { 2638 SELECT t2.a FROM t2 NATURAL JOIN t1 2639 WHERE t1.rowid >= -140737488355328 ORDER BY t1.a DESC 2640 } 2641 } {63 62 61 60 59 58 57 56 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 1} 2642 do_test boundary3-2.14.ge.3 { 2643 db eval { 2644 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 2645 WHERE t2.a=44 2646 ORDER BY t1.rowid 2647 } 2648 } {44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2649 do_test boundary3-2.14.ge.4 { 2650 db eval { 2651 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 2652 WHERE t2.a=44 2653 ORDER BY t1.rowid DESC 2654 } 2655 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44} 2656 do_test boundary3-2.14.ge.5 { 2657 db eval { 2658 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 2659 WHERE t2.a=44 2660 ORDER BY x 2661 } 2662 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 2663 do_test boundary3-2.14.lt.1 { 2664 db eval { 2665 SELECT t2.a FROM t1 JOIN t2 USING(a) 2666 WHERE t1.rowid < -140737488355328 ORDER BY t2.a 2667 } 2668 } {2 21 55 64} 2669 do_test boundary3-2.14.lt.2 { 2670 db eval { 2671 SELECT t2.a FROM t2 NATURAL JOIN t1 2672 WHERE t1.rowid < -140737488355328 ORDER BY t1.a DESC 2673 } 2674 } {64 55 21 2} 2675 do_test boundary3-2.14.lt.3 { 2676 db eval { 2677 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 2678 WHERE t2.a=44 2679 ORDER BY t1.rowid 2680 } 2681 } {55 2 64 21} 2682 do_test boundary3-2.14.lt.4 { 2683 db eval { 2684 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 2685 WHERE t2.a=44 2686 ORDER BY t1.rowid DESC 2687 } 2688 } {21 64 2 55} 2689 do_test boundary3-2.14.lt.5 { 2690 db eval { 2691 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 2692 WHERE t2.a=44 2693 ORDER BY x 2694 } 2695 } {55 2 64 21} 2696 do_test boundary3-2.14.le.1 { 2697 db eval { 2698 SELECT t2.a FROM t1 JOIN t2 USING(a) 2699 WHERE t1.rowid <= -140737488355328 ORDER BY t2.a 2700 } 2701 } {2 21 44 55 64} 2702 do_test boundary3-2.14.le.2 { 2703 db eval { 2704 SELECT t2.a FROM t2 NATURAL JOIN t1 2705 WHERE t1.rowid <= -140737488355328 ORDER BY t1.a DESC 2706 } 2707 } {64 55 44 21 2} 2708 do_test boundary3-2.14.le.3 { 2709 db eval { 2710 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 2711 WHERE t2.a=44 2712 ORDER BY t1.rowid 2713 } 2714 } {55 2 64 21 44} 2715 do_test boundary3-2.14.le.4 { 2716 db eval { 2717 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 2718 WHERE t2.a=44 2719 ORDER BY t1.rowid DESC 2720 } 2721 } {44 21 64 2 55} 2722 do_test boundary3-2.14.le.5 { 2723 db eval { 2724 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 2725 WHERE t2.a=44 2726 ORDER BY x 2727 } 2728 } {55 2 64 21 44} 2729 do_test boundary3-2.15.1 { 2730 db eval { 2731 SELECT t1.* FROM t1, t2 WHERE t1.rowid=1099511627776 AND t2.a=t1.a 2732 } 2733 } {19 0000010000000000} 2734 do_test boundary3-2.15.2 { 2735 db eval { 2736 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000010000000000' 2737 } 2738 } {1099511627776 19} 2739 do_test boundary3-2.15.3 { 2740 db eval { 2741 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=19 2742 } 2743 } {1099511627776 0000010000000000} 2744 do_test boundary3-2.15.gt.1 { 2745 db eval { 2746 SELECT t2.a FROM t1 JOIN t2 USING(a) 2747 WHERE t1.rowid > 1099511627776 ORDER BY t2.a 2748 } 2749 } {3 7 10 13 17 25 26 27 28 34 43 45 56} 2750 do_test boundary3-2.15.gt.2 { 2751 db eval { 2752 SELECT t2.a FROM t2 NATURAL JOIN t1 2753 WHERE t1.rowid > 1099511627776 ORDER BY t1.a DESC 2754 } 2755 } {56 45 43 34 28 27 26 25 17 13 10 7 3} 2756 do_test boundary3-2.15.gt.3 { 2757 db eval { 2758 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 2759 WHERE t2.a=19 2760 ORDER BY t1.rowid 2761 } 2762 } {7 56 25 34 10 26 13 43 27 45 17 28 3} 2763 do_test boundary3-2.15.gt.4 { 2764 db eval { 2765 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 2766 WHERE t2.a=19 2767 ORDER BY t1.rowid DESC 2768 } 2769 } {3 28 17 45 27 43 13 26 10 34 25 56 7} 2770 do_test boundary3-2.15.gt.5 { 2771 db eval { 2772 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 2773 WHERE t2.a=19 2774 ORDER BY x 2775 } 2776 } {7 56 25 34 10 26 13 43 27 45 17 28 3} 2777 do_test boundary3-2.15.gt.10 { 2778 db eval { 2779 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 2780 WHERE t2.a=19 2781 ORDER BY t1.rowid 2782 } 2783 } {7 56 25 34 10 26 13 43 27 45 17 28 3} 2784 do_test boundary3-2.15.gt.11 { 2785 db eval { 2786 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 2787 WHERE t2.a=19 2788 ORDER BY t1.rowid DESC 2789 } 2790 } {3 28 17 45 27 43 13 26 10 34 25 56 7} 2791 do_test boundary3-2.15.ge.1 { 2792 db eval { 2793 SELECT t2.a FROM t1 JOIN t2 USING(a) 2794 WHERE t1.rowid >= 1099511627776 ORDER BY t2.a 2795 } 2796 } {3 7 10 13 17 19 25 26 27 28 34 43 45 56} 2797 do_test boundary3-2.15.ge.2 { 2798 db eval { 2799 SELECT t2.a FROM t2 NATURAL JOIN t1 2800 WHERE t1.rowid >= 1099511627776 ORDER BY t1.a DESC 2801 } 2802 } {56 45 43 34 28 27 26 25 19 17 13 10 7 3} 2803 do_test boundary3-2.15.ge.3 { 2804 db eval { 2805 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 2806 WHERE t2.a=19 2807 ORDER BY t1.rowid 2808 } 2809 } {19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2810 do_test boundary3-2.15.ge.4 { 2811 db eval { 2812 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 2813 WHERE t2.a=19 2814 ORDER BY t1.rowid DESC 2815 } 2816 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19} 2817 do_test boundary3-2.15.ge.5 { 2818 db eval { 2819 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 2820 WHERE t2.a=19 2821 ORDER BY x 2822 } 2823 } {19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2824 do_test boundary3-2.15.ge.10 { 2825 db eval { 2826 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 2827 WHERE t2.a=19 2828 ORDER BY t1.rowid 2829 } 2830 } {19 7 56 25 34 10 26 13 43 27 45 17 28 3} 2831 do_test boundary3-2.15.ge.11 { 2832 db eval { 2833 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 2834 WHERE t2.a=19 2835 ORDER BY t1.rowid DESC 2836 } 2837 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19} 2838 do_test boundary3-2.15.lt.1 { 2839 db eval { 2840 SELECT t2.a FROM t1 JOIN t2 USING(a) 2841 WHERE t1.rowid < 1099511627776 ORDER BY t2.a 2842 } 2843 } {1 2 4 5 6 8 9 11 12 14 15 16 18 20 21 22 23 24 29 30 31 32 33 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 57 58 59 60 61 62 63 64} 2844 do_test boundary3-2.15.lt.2 { 2845 db eval { 2846 SELECT t2.a FROM t2 NATURAL JOIN t1 2847 WHERE t1.rowid < 1099511627776 ORDER BY t1.a DESC 2848 } 2849 } {64 63 62 61 60 59 58 57 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 33 32 31 30 29 24 23 22 21 20 18 16 15 14 12 11 9 8 6 5 4 2 1} 2850 do_test boundary3-2.15.lt.3 { 2851 db eval { 2852 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 2853 WHERE t2.a=19 2854 ORDER BY t1.rowid 2855 } 2856 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57} 2857 do_test boundary3-2.15.lt.4 { 2858 db eval { 2859 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 2860 WHERE t2.a=19 2861 ORDER BY t1.rowid DESC 2862 } 2863 } {57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 2864 do_test boundary3-2.15.lt.5 { 2865 db eval { 2866 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 2867 WHERE t2.a=19 2868 ORDER BY x 2869 } 2870 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 2871 do_test boundary3-2.15.lt.10 { 2872 db eval { 2873 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 2874 WHERE t2.a=19 2875 ORDER BY t1.rowid 2876 } 2877 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57} 2878 do_test boundary3-2.15.lt.11 { 2879 db eval { 2880 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 2881 WHERE t2.a=19 2882 ORDER BY t1.rowid DESC 2883 } 2884 } {57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 2885 do_test boundary3-2.15.le.1 { 2886 db eval { 2887 SELECT t2.a FROM t1 JOIN t2 USING(a) 2888 WHERE t1.rowid <= 1099511627776 ORDER BY t2.a 2889 } 2890 } {1 2 4 5 6 8 9 11 12 14 15 16 18 19 20 21 22 23 24 29 30 31 32 33 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 57 58 59 60 61 62 63 64} 2891 do_test boundary3-2.15.le.2 { 2892 db eval { 2893 SELECT t2.a FROM t2 NATURAL JOIN t1 2894 WHERE t1.rowid <= 1099511627776 ORDER BY t1.a DESC 2895 } 2896 } {64 63 62 61 60 59 58 57 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 33 32 31 30 29 24 23 22 21 20 19 18 16 15 14 12 11 9 8 6 5 4 2 1} 2897 do_test boundary3-2.15.le.3 { 2898 db eval { 2899 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 2900 WHERE t2.a=19 2901 ORDER BY t1.rowid 2902 } 2903 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19} 2904 do_test boundary3-2.15.le.4 { 2905 db eval { 2906 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 2907 WHERE t2.a=19 2908 ORDER BY t1.rowid DESC 2909 } 2910 } {19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 2911 do_test boundary3-2.15.le.5 { 2912 db eval { 2913 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 2914 WHERE t2.a=19 2915 ORDER BY x 2916 } 2917 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 2918 do_test boundary3-2.15.le.10 { 2919 db eval { 2920 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 2921 WHERE t2.a=19 2922 ORDER BY t1.rowid 2923 } 2924 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19} 2925 do_test boundary3-2.15.le.11 { 2926 db eval { 2927 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 2928 WHERE t2.a=19 2929 ORDER BY t1.rowid DESC 2930 } 2931 } {19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 2932 do_test boundary3-2.16.gt.1 { 2933 db eval { 2934 SELECT t2.a FROM t1 JOIN t2 USING(a) 2935 WHERE t1.rowid > 9223372036854775807 ORDER BY t2.a 2936 } 2937 } {} 2938 do_test boundary3-2.16.gt.2 { 2939 db eval { 2940 SELECT t2.a FROM t2 NATURAL JOIN t1 2941 WHERE t1.rowid > 9223372036854775807 ORDER BY t1.a DESC 2942 } 2943 } {} 2944 do_test boundary3-2.16.gt.3 { 2945 db eval { 2946 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 2947 WHERE t2.a=3 2948 ORDER BY t1.rowid 2949 } 2950 } {} 2951 do_test boundary3-2.16.gt.4 { 2952 db eval { 2953 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 2954 WHERE t2.a=3 2955 ORDER BY t1.rowid DESC 2956 } 2957 } {} 2958 do_test boundary3-2.16.gt.5 { 2959 db eval { 2960 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 2961 WHERE t2.a=3 2962 ORDER BY x 2963 } 2964 } {} 2965 do_test boundary3-2.16.ge.1 { 2966 db eval { 2967 SELECT t2.a FROM t1 JOIN t2 USING(a) 2968 WHERE t1.rowid >= 9223372036854775807 ORDER BY t2.a 2969 } 2970 } {3} 2971 do_test boundary3-2.16.ge.2 { 2972 db eval { 2973 SELECT t2.a FROM t2 NATURAL JOIN t1 2974 WHERE t1.rowid >= 9223372036854775807 ORDER BY t1.a DESC 2975 } 2976 } {3} 2977 do_test boundary3-2.16.ge.3 { 2978 db eval { 2979 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 2980 WHERE t2.a=3 2981 ORDER BY t1.rowid 2982 } 2983 } {3} 2984 do_test boundary3-2.16.ge.4 { 2985 db eval { 2986 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 2987 WHERE t2.a=3 2988 ORDER BY t1.rowid DESC 2989 } 2990 } {3} 2991 do_test boundary3-2.16.ge.5 { 2992 db eval { 2993 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 2994 WHERE t2.a=3 2995 ORDER BY x 2996 } 2997 } {3} 2998 do_test boundary3-2.16.lt.1 { 2999 db eval { 3000 SELECT t2.a FROM t1 JOIN t2 USING(a) 3001 WHERE t1.rowid < 9223372036854775807 ORDER BY t2.a 3002 } 3003 } {1 2 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} 3004 do_test boundary3-2.16.lt.2 { 3005 db eval { 3006 SELECT t2.a FROM t2 NATURAL JOIN t1 3007 WHERE t1.rowid < 9223372036854775807 ORDER BY t1.a DESC 3008 } 3009 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 2 1} 3010 do_test boundary3-2.16.lt.3 { 3011 db eval { 3012 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 3013 WHERE t2.a=3 3014 ORDER BY t1.rowid 3015 } 3016 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28} 3017 do_test boundary3-2.16.lt.4 { 3018 db eval { 3019 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 3020 WHERE t2.a=3 3021 ORDER BY t1.rowid DESC 3022 } 3023 } {28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 3024 do_test boundary3-2.16.lt.5 { 3025 db eval { 3026 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 3027 WHERE t2.a=3 3028 ORDER BY x 3029 } 3030 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 3031 do_test boundary3-2.16.le.1 { 3032 db eval { 3033 SELECT t2.a FROM t1 JOIN t2 USING(a) 3034 WHERE t1.rowid <= 9223372036854775807 ORDER BY t2.a 3035 } 3036 } {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} 3037 do_test boundary3-2.16.le.2 { 3038 db eval { 3039 SELECT t2.a FROM t2 NATURAL JOIN t1 3040 WHERE t1.rowid <= 9223372036854775807 ORDER BY t1.a DESC 3041 } 3042 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1} 3043 do_test boundary3-2.16.le.3 { 3044 db eval { 3045 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 3046 WHERE t2.a=3 3047 ORDER BY t1.rowid 3048 } 3049 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3050 do_test boundary3-2.16.le.4 { 3051 db eval { 3052 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 3053 WHERE t2.a=3 3054 ORDER BY t1.rowid DESC 3055 } 3056 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 3057 do_test boundary3-2.16.le.5 { 3058 db eval { 3059 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 3060 WHERE t2.a=3 3061 ORDER BY x 3062 } 3063 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 3064 do_test boundary3-2.17.1 { 3065 db eval { 3066 SELECT t1.* FROM t1, t2 WHERE t1.rowid=32768 AND t2.a=t1.a 3067 } 3068 } {50 0000000000008000} 3069 do_test boundary3-2.17.2 { 3070 db eval { 3071 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000000008000' 3072 } 3073 } {32768 50} 3074 do_test boundary3-2.17.3 { 3075 db eval { 3076 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=50 3077 } 3078 } {32768 0000000000008000} 3079 do_test boundary3-2.17.gt.1 { 3080 db eval { 3081 SELECT t2.a FROM t1 JOIN t2 USING(a) 3082 WHERE t1.rowid > 32768 ORDER BY t2.a 3083 } 3084 } {3 6 7 9 10 12 13 14 15 17 18 19 20 22 24 25 26 27 28 34 35 36 39 40 42 43 45 46 48 51 56 57 62} 3085 do_test boundary3-2.17.gt.2 { 3086 db eval { 3087 SELECT t2.a FROM t2 NATURAL JOIN t1 3088 WHERE t1.rowid > 32768 ORDER BY t1.a DESC 3089 } 3090 } {62 57 56 51 48 46 45 43 42 40 39 36 35 34 28 27 26 25 24 22 20 19 18 17 15 14 13 12 10 9 7 6 3} 3091 do_test boundary3-2.17.gt.3 { 3092 db eval { 3093 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 3094 WHERE t2.a=50 3095 ORDER BY t1.rowid 3096 } 3097 } {48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3098 do_test boundary3-2.17.gt.4 { 3099 db eval { 3100 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 3101 WHERE t2.a=50 3102 ORDER BY t1.rowid DESC 3103 } 3104 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48} 3105 do_test boundary3-2.17.gt.5 { 3106 db eval { 3107 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 3108 WHERE t2.a=50 3109 ORDER BY x 3110 } 3111 } {48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3112 do_test boundary3-2.17.gt.10 { 3113 db eval { 3114 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 3115 WHERE t2.a=50 3116 ORDER BY t1.rowid 3117 } 3118 } {48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3119 do_test boundary3-2.17.gt.11 { 3120 db eval { 3121 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 3122 WHERE t2.a=50 3123 ORDER BY t1.rowid DESC 3124 } 3125 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48} 3126 do_test boundary3-2.17.ge.1 { 3127 db eval { 3128 SELECT t2.a FROM t1 JOIN t2 USING(a) 3129 WHERE t1.rowid >= 32768 ORDER BY t2.a 3130 } 3131 } {3 6 7 9 10 12 13 14 15 17 18 19 20 22 24 25 26 27 28 34 35 36 39 40 42 43 45 46 48 50 51 56 57 62} 3132 do_test boundary3-2.17.ge.2 { 3133 db eval { 3134 SELECT t2.a FROM t2 NATURAL JOIN t1 3135 WHERE t1.rowid >= 32768 ORDER BY t1.a DESC 3136 } 3137 } {62 57 56 51 50 48 46 45 43 42 40 39 36 35 34 28 27 26 25 24 22 20 19 18 17 15 14 13 12 10 9 7 6 3} 3138 do_test boundary3-2.17.ge.3 { 3139 db eval { 3140 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 3141 WHERE t2.a=50 3142 ORDER BY t1.rowid 3143 } 3144 } {50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3145 do_test boundary3-2.17.ge.4 { 3146 db eval { 3147 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 3148 WHERE t2.a=50 3149 ORDER BY t1.rowid DESC 3150 } 3151 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50} 3152 do_test boundary3-2.17.ge.5 { 3153 db eval { 3154 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 3155 WHERE t2.a=50 3156 ORDER BY x 3157 } 3158 } {50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3159 do_test boundary3-2.17.ge.10 { 3160 db eval { 3161 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 3162 WHERE t2.a=50 3163 ORDER BY t1.rowid 3164 } 3165 } {50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3166 do_test boundary3-2.17.ge.11 { 3167 db eval { 3168 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 3169 WHERE t2.a=50 3170 ORDER BY t1.rowid DESC 3171 } 3172 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50} 3173 do_test boundary3-2.17.lt.1 { 3174 db eval { 3175 SELECT t2.a FROM t1 JOIN t2 USING(a) 3176 WHERE t1.rowid < 32768 ORDER BY t2.a 3177 } 3178 } {1 2 4 5 8 11 16 21 23 29 30 31 32 33 37 38 41 44 47 49 52 53 54 55 58 59 60 61 63 64} 3179 do_test boundary3-2.17.lt.2 { 3180 db eval { 3181 SELECT t2.a FROM t2 NATURAL JOIN t1 3182 WHERE t1.rowid < 32768 ORDER BY t1.a DESC 3183 } 3184 } {64 63 61 60 59 58 55 54 53 52 49 47 44 41 38 37 33 32 31 30 29 23 21 16 11 8 5 4 2 1} 3185 do_test boundary3-2.17.lt.3 { 3186 db eval { 3187 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 3188 WHERE t2.a=50 3189 ORDER BY t1.rowid 3190 } 3191 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23} 3192 do_test boundary3-2.17.lt.4 { 3193 db eval { 3194 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 3195 WHERE t2.a=50 3196 ORDER BY t1.rowid DESC 3197 } 3198 } {23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 3199 do_test boundary3-2.17.lt.5 { 3200 db eval { 3201 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 3202 WHERE t2.a=50 3203 ORDER BY x 3204 } 3205 } {59 60 41 5 31 4 49 30 61 8 16 23 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 3206 do_test boundary3-2.17.lt.10 { 3207 db eval { 3208 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 3209 WHERE t2.a=50 3210 ORDER BY t1.rowid 3211 } 3212 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23} 3213 do_test boundary3-2.17.lt.11 { 3214 db eval { 3215 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 3216 WHERE t2.a=50 3217 ORDER BY t1.rowid DESC 3218 } 3219 } {23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 3220 do_test boundary3-2.17.le.1 { 3221 db eval { 3222 SELECT t2.a FROM t1 JOIN t2 USING(a) 3223 WHERE t1.rowid <= 32768 ORDER BY t2.a 3224 } 3225 } {1 2 4 5 8 11 16 21 23 29 30 31 32 33 37 38 41 44 47 49 50 52 53 54 55 58 59 60 61 63 64} 3226 do_test boundary3-2.17.le.2 { 3227 db eval { 3228 SELECT t2.a FROM t2 NATURAL JOIN t1 3229 WHERE t1.rowid <= 32768 ORDER BY t1.a DESC 3230 } 3231 } {64 63 61 60 59 58 55 54 53 52 50 49 47 44 41 38 37 33 32 31 30 29 23 21 16 11 8 5 4 2 1} 3232 do_test boundary3-2.17.le.3 { 3233 db eval { 3234 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 3235 WHERE t2.a=50 3236 ORDER BY t1.rowid 3237 } 3238 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50} 3239 do_test boundary3-2.17.le.4 { 3240 db eval { 3241 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 3242 WHERE t2.a=50 3243 ORDER BY t1.rowid DESC 3244 } 3245 } {50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 3246 do_test boundary3-2.17.le.5 { 3247 db eval { 3248 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 3249 WHERE t2.a=50 3250 ORDER BY x 3251 } 3252 } {59 60 41 5 31 4 49 30 61 8 16 23 50 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 3253 do_test boundary3-2.17.le.10 { 3254 db eval { 3255 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 3256 WHERE t2.a=50 3257 ORDER BY t1.rowid 3258 } 3259 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50} 3260 do_test boundary3-2.17.le.11 { 3261 db eval { 3262 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 3263 WHERE t2.a=50 3264 ORDER BY t1.rowid DESC 3265 } 3266 } {50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 3267 do_test boundary3-2.18.1 { 3268 db eval { 3269 SELECT t1.* FROM t1, t2 WHERE t1.rowid=-36028797018963968 AND t2.a=t1.a 3270 } 3271 } {64 ff80000000000000} 3272 do_test boundary3-2.18.2 { 3273 db eval { 3274 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='ff80000000000000' 3275 } 3276 } {-36028797018963968 64} 3277 do_test boundary3-2.18.3 { 3278 db eval { 3279 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=64 3280 } 3281 } {-36028797018963968 ff80000000000000} 3282 do_test boundary3-2.18.gt.1 { 3283 db eval { 3284 SELECT t2.a FROM t1 JOIN t2 USING(a) 3285 WHERE t1.rowid > -36028797018963968 ORDER BY t2.a 3286 } 3287 } {1 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 56 57 58 59 60 61 62 63} 3288 do_test boundary3-2.18.gt.2 { 3289 db eval { 3290 SELECT t2.a FROM t2 NATURAL JOIN t1 3291 WHERE t1.rowid > -36028797018963968 ORDER BY t1.a DESC 3292 } 3293 } {63 62 61 60 59 58 57 56 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 1} 3294 do_test boundary3-2.18.gt.3 { 3295 db eval { 3296 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 3297 WHERE t2.a=64 3298 ORDER BY t1.rowid 3299 } 3300 } {21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3301 do_test boundary3-2.18.gt.4 { 3302 db eval { 3303 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 3304 WHERE t2.a=64 3305 ORDER BY t1.rowid DESC 3306 } 3307 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21} 3308 do_test boundary3-2.18.gt.5 { 3309 db eval { 3310 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 3311 WHERE t2.a=64 3312 ORDER BY x 3313 } 3314 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 3315 do_test boundary3-2.18.ge.1 { 3316 db eval { 3317 SELECT t2.a FROM t1 JOIN t2 USING(a) 3318 WHERE t1.rowid >= -36028797018963968 ORDER BY t2.a 3319 } 3320 } {1 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 56 57 58 59 60 61 62 63 64} 3321 do_test boundary3-2.18.ge.2 { 3322 db eval { 3323 SELECT t2.a FROM t2 NATURAL JOIN t1 3324 WHERE t1.rowid >= -36028797018963968 ORDER BY t1.a DESC 3325 } 3326 } {64 63 62 61 60 59 58 57 56 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 1} 3327 do_test boundary3-2.18.ge.3 { 3328 db eval { 3329 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 3330 WHERE t2.a=64 3331 ORDER BY t1.rowid 3332 } 3333 } {64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3334 do_test boundary3-2.18.ge.4 { 3335 db eval { 3336 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 3337 WHERE t2.a=64 3338 ORDER BY t1.rowid DESC 3339 } 3340 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64} 3341 do_test boundary3-2.18.ge.5 { 3342 db eval { 3343 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 3344 WHERE t2.a=64 3345 ORDER BY x 3346 } 3347 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 3348 do_test boundary3-2.18.lt.1 { 3349 db eval { 3350 SELECT t2.a FROM t1 JOIN t2 USING(a) 3351 WHERE t1.rowid < -36028797018963968 ORDER BY t2.a 3352 } 3353 } {2 55} 3354 do_test boundary3-2.18.lt.2 { 3355 db eval { 3356 SELECT t2.a FROM t2 NATURAL JOIN t1 3357 WHERE t1.rowid < -36028797018963968 ORDER BY t1.a DESC 3358 } 3359 } {55 2} 3360 do_test boundary3-2.18.lt.3 { 3361 db eval { 3362 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 3363 WHERE t2.a=64 3364 ORDER BY t1.rowid 3365 } 3366 } {55 2} 3367 do_test boundary3-2.18.lt.4 { 3368 db eval { 3369 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 3370 WHERE t2.a=64 3371 ORDER BY t1.rowid DESC 3372 } 3373 } {2 55} 3374 do_test boundary3-2.18.lt.5 { 3375 db eval { 3376 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 3377 WHERE t2.a=64 3378 ORDER BY x 3379 } 3380 } {55 2} 3381 do_test boundary3-2.18.le.1 { 3382 db eval { 3383 SELECT t2.a FROM t1 JOIN t2 USING(a) 3384 WHERE t1.rowid <= -36028797018963968 ORDER BY t2.a 3385 } 3386 } {2 55 64} 3387 do_test boundary3-2.18.le.2 { 3388 db eval { 3389 SELECT t2.a FROM t2 NATURAL JOIN t1 3390 WHERE t1.rowid <= -36028797018963968 ORDER BY t1.a DESC 3391 } 3392 } {64 55 2} 3393 do_test boundary3-2.18.le.3 { 3394 db eval { 3395 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 3396 WHERE t2.a=64 3397 ORDER BY t1.rowid 3398 } 3399 } {55 2 64} 3400 do_test boundary3-2.18.le.4 { 3401 db eval { 3402 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 3403 WHERE t2.a=64 3404 ORDER BY t1.rowid DESC 3405 } 3406 } {64 2 55} 3407 do_test boundary3-2.18.le.5 { 3408 db eval { 3409 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 3410 WHERE t2.a=64 3411 ORDER BY x 3412 } 3413 } {55 2 64} 3414 do_test boundary3-2.19.1 { 3415 db eval { 3416 SELECT t1.* FROM t1, t2 WHERE t1.rowid=65535 AND t2.a=t1.a 3417 } 3418 } {48 000000000000ffff} 3419 do_test boundary3-2.19.2 { 3420 db eval { 3421 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='000000000000ffff' 3422 } 3423 } {65535 48} 3424 do_test boundary3-2.19.3 { 3425 db eval { 3426 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=48 3427 } 3428 } {65535 000000000000ffff} 3429 do_test boundary3-2.19.gt.1 { 3430 db eval { 3431 SELECT t2.a FROM t1 JOIN t2 USING(a) 3432 WHERE t1.rowid > 65535 ORDER BY t2.a 3433 } 3434 } {3 6 7 9 10 12 13 14 15 17 18 19 20 22 24 25 26 27 28 34 35 36 39 40 42 43 45 46 51 56 57 62} 3435 do_test boundary3-2.19.gt.2 { 3436 db eval { 3437 SELECT t2.a FROM t2 NATURAL JOIN t1 3438 WHERE t1.rowid > 65535 ORDER BY t1.a DESC 3439 } 3440 } {62 57 56 51 46 45 43 42 40 39 36 35 34 28 27 26 25 24 22 20 19 18 17 15 14 13 12 10 9 7 6 3} 3441 do_test boundary3-2.19.gt.3 { 3442 db eval { 3443 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 3444 WHERE t2.a=48 3445 ORDER BY t1.rowid 3446 } 3447 } {62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3448 do_test boundary3-2.19.gt.4 { 3449 db eval { 3450 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 3451 WHERE t2.a=48 3452 ORDER BY t1.rowid DESC 3453 } 3454 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62} 3455 do_test boundary3-2.19.gt.5 { 3456 db eval { 3457 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 3458 WHERE t2.a=48 3459 ORDER BY x 3460 } 3461 } {62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3462 do_test boundary3-2.19.gt.10 { 3463 db eval { 3464 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 3465 WHERE t2.a=48 3466 ORDER BY t1.rowid 3467 } 3468 } {62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3469 do_test boundary3-2.19.gt.11 { 3470 db eval { 3471 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 3472 WHERE t2.a=48 3473 ORDER BY t1.rowid DESC 3474 } 3475 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62} 3476 do_test boundary3-2.19.ge.1 { 3477 db eval { 3478 SELECT t2.a FROM t1 JOIN t2 USING(a) 3479 WHERE t1.rowid >= 65535 ORDER BY t2.a 3480 } 3481 } {3 6 7 9 10 12 13 14 15 17 18 19 20 22 24 25 26 27 28 34 35 36 39 40 42 43 45 46 48 51 56 57 62} 3482 do_test boundary3-2.19.ge.2 { 3483 db eval { 3484 SELECT t2.a FROM t2 NATURAL JOIN t1 3485 WHERE t1.rowid >= 65535 ORDER BY t1.a DESC 3486 } 3487 } {62 57 56 51 48 46 45 43 42 40 39 36 35 34 28 27 26 25 24 22 20 19 18 17 15 14 13 12 10 9 7 6 3} 3488 do_test boundary3-2.19.ge.3 { 3489 db eval { 3490 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 3491 WHERE t2.a=48 3492 ORDER BY t1.rowid 3493 } 3494 } {48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3495 do_test boundary3-2.19.ge.4 { 3496 db eval { 3497 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 3498 WHERE t2.a=48 3499 ORDER BY t1.rowid DESC 3500 } 3501 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48} 3502 do_test boundary3-2.19.ge.5 { 3503 db eval { 3504 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 3505 WHERE t2.a=48 3506 ORDER BY x 3507 } 3508 } {48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3509 do_test boundary3-2.19.ge.10 { 3510 db eval { 3511 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 3512 WHERE t2.a=48 3513 ORDER BY t1.rowid 3514 } 3515 } {48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3516 do_test boundary3-2.19.ge.11 { 3517 db eval { 3518 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 3519 WHERE t2.a=48 3520 ORDER BY t1.rowid DESC 3521 } 3522 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48} 3523 do_test boundary3-2.19.lt.1 { 3524 db eval { 3525 SELECT t2.a FROM t1 JOIN t2 USING(a) 3526 WHERE t1.rowid < 65535 ORDER BY t2.a 3527 } 3528 } {1 2 4 5 8 11 16 21 23 29 30 31 32 33 37 38 41 44 47 49 50 52 53 54 55 58 59 60 61 63 64} 3529 do_test boundary3-2.19.lt.2 { 3530 db eval { 3531 SELECT t2.a FROM t2 NATURAL JOIN t1 3532 WHERE t1.rowid < 65535 ORDER BY t1.a DESC 3533 } 3534 } {64 63 61 60 59 58 55 54 53 52 50 49 47 44 41 38 37 33 32 31 30 29 23 21 16 11 8 5 4 2 1} 3535 do_test boundary3-2.19.lt.3 { 3536 db eval { 3537 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 3538 WHERE t2.a=48 3539 ORDER BY t1.rowid 3540 } 3541 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50} 3542 do_test boundary3-2.19.lt.4 { 3543 db eval { 3544 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 3545 WHERE t2.a=48 3546 ORDER BY t1.rowid DESC 3547 } 3548 } {50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 3549 do_test boundary3-2.19.lt.5 { 3550 db eval { 3551 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 3552 WHERE t2.a=48 3553 ORDER BY x 3554 } 3555 } {59 60 41 5 31 4 49 30 61 8 16 23 50 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 3556 do_test boundary3-2.19.lt.10 { 3557 db eval { 3558 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 3559 WHERE t2.a=48 3560 ORDER BY t1.rowid 3561 } 3562 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50} 3563 do_test boundary3-2.19.lt.11 { 3564 db eval { 3565 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 3566 WHERE t2.a=48 3567 ORDER BY t1.rowid DESC 3568 } 3569 } {50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 3570 do_test boundary3-2.19.le.1 { 3571 db eval { 3572 SELECT t2.a FROM t1 JOIN t2 USING(a) 3573 WHERE t1.rowid <= 65535 ORDER BY t2.a 3574 } 3575 } {1 2 4 5 8 11 16 21 23 29 30 31 32 33 37 38 41 44 47 48 49 50 52 53 54 55 58 59 60 61 63 64} 3576 do_test boundary3-2.19.le.2 { 3577 db eval { 3578 SELECT t2.a FROM t2 NATURAL JOIN t1 3579 WHERE t1.rowid <= 65535 ORDER BY t1.a DESC 3580 } 3581 } {64 63 61 60 59 58 55 54 53 52 50 49 48 47 44 41 38 37 33 32 31 30 29 23 21 16 11 8 5 4 2 1} 3582 do_test boundary3-2.19.le.3 { 3583 db eval { 3584 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 3585 WHERE t2.a=48 3586 ORDER BY t1.rowid 3587 } 3588 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48} 3589 do_test boundary3-2.19.le.4 { 3590 db eval { 3591 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 3592 WHERE t2.a=48 3593 ORDER BY t1.rowid DESC 3594 } 3595 } {48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 3596 do_test boundary3-2.19.le.5 { 3597 db eval { 3598 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 3599 WHERE t2.a=48 3600 ORDER BY x 3601 } 3602 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 3603 do_test boundary3-2.19.le.10 { 3604 db eval { 3605 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 3606 WHERE t2.a=48 3607 ORDER BY t1.rowid 3608 } 3609 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48} 3610 do_test boundary3-2.19.le.11 { 3611 db eval { 3612 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 3613 WHERE t2.a=48 3614 ORDER BY t1.rowid DESC 3615 } 3616 } {48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 3617 do_test boundary3-2.20.1 { 3618 db eval { 3619 SELECT t1.* FROM t1, t2 WHERE t1.rowid=4294967295 AND t2.a=t1.a 3620 } 3621 } {14 00000000ffffffff} 3622 do_test boundary3-2.20.2 { 3623 db eval { 3624 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='00000000ffffffff' 3625 } 3626 } {4294967295 14} 3627 do_test boundary3-2.20.3 { 3628 db eval { 3629 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=14 3630 } 3631 } {4294967295 00000000ffffffff} 3632 do_test boundary3-2.20.gt.1 { 3633 db eval { 3634 SELECT t2.a FROM t1 JOIN t2 USING(a) 3635 WHERE t1.rowid > 4294967295 ORDER BY t2.a 3636 } 3637 } {3 7 10 13 17 19 22 25 26 27 28 34 35 36 39 43 45 46 56 57} 3638 do_test boundary3-2.20.gt.2 { 3639 db eval { 3640 SELECT t2.a FROM t2 NATURAL JOIN t1 3641 WHERE t1.rowid > 4294967295 ORDER BY t1.a DESC 3642 } 3643 } {57 56 46 45 43 39 36 35 34 28 27 26 25 22 19 17 13 10 7 3} 3644 do_test boundary3-2.20.gt.3 { 3645 db eval { 3646 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 3647 WHERE t2.a=14 3648 ORDER BY t1.rowid 3649 } 3650 } {36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3651 do_test boundary3-2.20.gt.4 { 3652 db eval { 3653 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 3654 WHERE t2.a=14 3655 ORDER BY t1.rowid DESC 3656 } 3657 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36} 3658 do_test boundary3-2.20.gt.5 { 3659 db eval { 3660 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 3661 WHERE t2.a=14 3662 ORDER BY x 3663 } 3664 } {36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3665 do_test boundary3-2.20.gt.10 { 3666 db eval { 3667 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 3668 WHERE t2.a=14 3669 ORDER BY t1.rowid 3670 } 3671 } {36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3672 do_test boundary3-2.20.gt.11 { 3673 db eval { 3674 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 3675 WHERE t2.a=14 3676 ORDER BY t1.rowid DESC 3677 } 3678 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36} 3679 do_test boundary3-2.20.ge.1 { 3680 db eval { 3681 SELECT t2.a FROM t1 JOIN t2 USING(a) 3682 WHERE t1.rowid >= 4294967295 ORDER BY t2.a 3683 } 3684 } {3 7 10 13 14 17 19 22 25 26 27 28 34 35 36 39 43 45 46 56 57} 3685 do_test boundary3-2.20.ge.2 { 3686 db eval { 3687 SELECT t2.a FROM t2 NATURAL JOIN t1 3688 WHERE t1.rowid >= 4294967295 ORDER BY t1.a DESC 3689 } 3690 } {57 56 46 45 43 39 36 35 34 28 27 26 25 22 19 17 14 13 10 7 3} 3691 do_test boundary3-2.20.ge.3 { 3692 db eval { 3693 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 3694 WHERE t2.a=14 3695 ORDER BY t1.rowid 3696 } 3697 } {14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3698 do_test boundary3-2.20.ge.4 { 3699 db eval { 3700 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 3701 WHERE t2.a=14 3702 ORDER BY t1.rowid DESC 3703 } 3704 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14} 3705 do_test boundary3-2.20.ge.5 { 3706 db eval { 3707 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 3708 WHERE t2.a=14 3709 ORDER BY x 3710 } 3711 } {14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3712 do_test boundary3-2.20.ge.10 { 3713 db eval { 3714 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 3715 WHERE t2.a=14 3716 ORDER BY t1.rowid 3717 } 3718 } {14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3719 do_test boundary3-2.20.ge.11 { 3720 db eval { 3721 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 3722 WHERE t2.a=14 3723 ORDER BY t1.rowid DESC 3724 } 3725 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14} 3726 do_test boundary3-2.20.lt.1 { 3727 db eval { 3728 SELECT t2.a FROM t1 JOIN t2 USING(a) 3729 WHERE t1.rowid < 4294967295 ORDER BY t2.a 3730 } 3731 } {1 2 4 5 6 8 9 11 12 15 16 18 20 21 23 24 29 30 31 32 33 37 38 40 41 42 44 47 48 49 50 51 52 53 54 55 58 59 60 61 62 63 64} 3732 do_test boundary3-2.20.lt.2 { 3733 db eval { 3734 SELECT t2.a FROM t2 NATURAL JOIN t1 3735 WHERE t1.rowid < 4294967295 ORDER BY t1.a DESC 3736 } 3737 } {64 63 62 61 60 59 58 55 54 53 52 51 50 49 48 47 44 42 41 40 38 37 33 32 31 30 29 24 23 21 20 18 16 15 12 11 9 8 6 5 4 2 1} 3738 do_test boundary3-2.20.lt.3 { 3739 db eval { 3740 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 3741 WHERE t2.a=14 3742 ORDER BY t1.rowid 3743 } 3744 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51} 3745 do_test boundary3-2.20.lt.4 { 3746 db eval { 3747 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 3748 WHERE t2.a=14 3749 ORDER BY t1.rowid DESC 3750 } 3751 } {51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 3752 do_test boundary3-2.20.lt.5 { 3753 db eval { 3754 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 3755 WHERE t2.a=14 3756 ORDER BY x 3757 } 3758 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 3759 do_test boundary3-2.20.lt.10 { 3760 db eval { 3761 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 3762 WHERE t2.a=14 3763 ORDER BY t1.rowid 3764 } 3765 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51} 3766 do_test boundary3-2.20.lt.11 { 3767 db eval { 3768 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 3769 WHERE t2.a=14 3770 ORDER BY t1.rowid DESC 3771 } 3772 } {51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 3773 do_test boundary3-2.20.le.1 { 3774 db eval { 3775 SELECT t2.a FROM t1 JOIN t2 USING(a) 3776 WHERE t1.rowid <= 4294967295 ORDER BY t2.a 3777 } 3778 } {1 2 4 5 6 8 9 11 12 14 15 16 18 20 21 23 24 29 30 31 32 33 37 38 40 41 42 44 47 48 49 50 51 52 53 54 55 58 59 60 61 62 63 64} 3779 do_test boundary3-2.20.le.2 { 3780 db eval { 3781 SELECT t2.a FROM t2 NATURAL JOIN t1 3782 WHERE t1.rowid <= 4294967295 ORDER BY t1.a DESC 3783 } 3784 } {64 63 62 61 60 59 58 55 54 53 52 51 50 49 48 47 44 42 41 40 38 37 33 32 31 30 29 24 23 21 20 18 16 15 14 12 11 9 8 6 5 4 2 1} 3785 do_test boundary3-2.20.le.3 { 3786 db eval { 3787 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 3788 WHERE t2.a=14 3789 ORDER BY t1.rowid 3790 } 3791 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14} 3792 do_test boundary3-2.20.le.4 { 3793 db eval { 3794 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 3795 WHERE t2.a=14 3796 ORDER BY t1.rowid DESC 3797 } 3798 } {14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 3799 do_test boundary3-2.20.le.5 { 3800 db eval { 3801 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 3802 WHERE t2.a=14 3803 ORDER BY x 3804 } 3805 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 3806 do_test boundary3-2.20.le.10 { 3807 db eval { 3808 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 3809 WHERE t2.a=14 3810 ORDER BY t1.rowid 3811 } 3812 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14} 3813 do_test boundary3-2.20.le.11 { 3814 db eval { 3815 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 3816 WHERE t2.a=14 3817 ORDER BY t1.rowid DESC 3818 } 3819 } {14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 3820 do_test boundary3-2.21.1 { 3821 db eval { 3822 SELECT t1.* FROM t1, t2 WHERE t1.rowid=1099511627775 AND t2.a=t1.a 3823 } 3824 } {57 000000ffffffffff} 3825 do_test boundary3-2.21.2 { 3826 db eval { 3827 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='000000ffffffffff' 3828 } 3829 } {1099511627775 57} 3830 do_test boundary3-2.21.3 { 3831 db eval { 3832 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=57 3833 } 3834 } {1099511627775 000000ffffffffff} 3835 do_test boundary3-2.21.gt.1 { 3836 db eval { 3837 SELECT t2.a FROM t1 JOIN t2 USING(a) 3838 WHERE t1.rowid > 1099511627775 ORDER BY t2.a 3839 } 3840 } {3 7 10 13 17 19 25 26 27 28 34 43 45 56} 3841 do_test boundary3-2.21.gt.2 { 3842 db eval { 3843 SELECT t2.a FROM t2 NATURAL JOIN t1 3844 WHERE t1.rowid > 1099511627775 ORDER BY t1.a DESC 3845 } 3846 } {56 45 43 34 28 27 26 25 19 17 13 10 7 3} 3847 do_test boundary3-2.21.gt.3 { 3848 db eval { 3849 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 3850 WHERE t2.a=57 3851 ORDER BY t1.rowid 3852 } 3853 } {19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3854 do_test boundary3-2.21.gt.4 { 3855 db eval { 3856 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 3857 WHERE t2.a=57 3858 ORDER BY t1.rowid DESC 3859 } 3860 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19} 3861 do_test boundary3-2.21.gt.5 { 3862 db eval { 3863 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 3864 WHERE t2.a=57 3865 ORDER BY x 3866 } 3867 } {19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3868 do_test boundary3-2.21.gt.10 { 3869 db eval { 3870 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 3871 WHERE t2.a=57 3872 ORDER BY t1.rowid 3873 } 3874 } {19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3875 do_test boundary3-2.21.gt.11 { 3876 db eval { 3877 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 3878 WHERE t2.a=57 3879 ORDER BY t1.rowid DESC 3880 } 3881 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19} 3882 do_test boundary3-2.21.ge.1 { 3883 db eval { 3884 SELECT t2.a FROM t1 JOIN t2 USING(a) 3885 WHERE t1.rowid >= 1099511627775 ORDER BY t2.a 3886 } 3887 } {3 7 10 13 17 19 25 26 27 28 34 43 45 56 57} 3888 do_test boundary3-2.21.ge.2 { 3889 db eval { 3890 SELECT t2.a FROM t2 NATURAL JOIN t1 3891 WHERE t1.rowid >= 1099511627775 ORDER BY t1.a DESC 3892 } 3893 } {57 56 45 43 34 28 27 26 25 19 17 13 10 7 3} 3894 do_test boundary3-2.21.ge.3 { 3895 db eval { 3896 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 3897 WHERE t2.a=57 3898 ORDER BY t1.rowid 3899 } 3900 } {57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3901 do_test boundary3-2.21.ge.4 { 3902 db eval { 3903 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 3904 WHERE t2.a=57 3905 ORDER BY t1.rowid DESC 3906 } 3907 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57} 3908 do_test boundary3-2.21.ge.5 { 3909 db eval { 3910 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 3911 WHERE t2.a=57 3912 ORDER BY x 3913 } 3914 } {57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3915 do_test boundary3-2.21.ge.10 { 3916 db eval { 3917 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 3918 WHERE t2.a=57 3919 ORDER BY t1.rowid 3920 } 3921 } {57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 3922 do_test boundary3-2.21.ge.11 { 3923 db eval { 3924 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 3925 WHERE t2.a=57 3926 ORDER BY t1.rowid DESC 3927 } 3928 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57} 3929 do_test boundary3-2.21.lt.1 { 3930 db eval { 3931 SELECT t2.a FROM t1 JOIN t2 USING(a) 3932 WHERE t1.rowid < 1099511627775 ORDER BY t2.a 3933 } 3934 } {1 2 4 5 6 8 9 11 12 14 15 16 18 20 21 22 23 24 29 30 31 32 33 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 58 59 60 61 62 63 64} 3935 do_test boundary3-2.21.lt.2 { 3936 db eval { 3937 SELECT t2.a FROM t2 NATURAL JOIN t1 3938 WHERE t1.rowid < 1099511627775 ORDER BY t1.a DESC 3939 } 3940 } {64 63 62 61 60 59 58 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 33 32 31 30 29 24 23 22 21 20 18 16 15 14 12 11 9 8 6 5 4 2 1} 3941 do_test boundary3-2.21.lt.3 { 3942 db eval { 3943 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 3944 WHERE t2.a=57 3945 ORDER BY t1.rowid 3946 } 3947 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35} 3948 do_test boundary3-2.21.lt.4 { 3949 db eval { 3950 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 3951 WHERE t2.a=57 3952 ORDER BY t1.rowid DESC 3953 } 3954 } {35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 3955 do_test boundary3-2.21.lt.5 { 3956 db eval { 3957 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 3958 WHERE t2.a=57 3959 ORDER BY x 3960 } 3961 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 3962 do_test boundary3-2.21.lt.10 { 3963 db eval { 3964 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 3965 WHERE t2.a=57 3966 ORDER BY t1.rowid 3967 } 3968 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35} 3969 do_test boundary3-2.21.lt.11 { 3970 db eval { 3971 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 3972 WHERE t2.a=57 3973 ORDER BY t1.rowid DESC 3974 } 3975 } {35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 3976 do_test boundary3-2.21.le.1 { 3977 db eval { 3978 SELECT t2.a FROM t1 JOIN t2 USING(a) 3979 WHERE t1.rowid <= 1099511627775 ORDER BY t2.a 3980 } 3981 } {1 2 4 5 6 8 9 11 12 14 15 16 18 20 21 22 23 24 29 30 31 32 33 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 57 58 59 60 61 62 63 64} 3982 do_test boundary3-2.21.le.2 { 3983 db eval { 3984 SELECT t2.a FROM t2 NATURAL JOIN t1 3985 WHERE t1.rowid <= 1099511627775 ORDER BY t1.a DESC 3986 } 3987 } {64 63 62 61 60 59 58 57 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 33 32 31 30 29 24 23 22 21 20 18 16 15 14 12 11 9 8 6 5 4 2 1} 3988 do_test boundary3-2.21.le.3 { 3989 db eval { 3990 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 3991 WHERE t2.a=57 3992 ORDER BY t1.rowid 3993 } 3994 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57} 3995 do_test boundary3-2.21.le.4 { 3996 db eval { 3997 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 3998 WHERE t2.a=57 3999 ORDER BY t1.rowid DESC 4000 } 4001 } {57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 4002 do_test boundary3-2.21.le.5 { 4003 db eval { 4004 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 4005 WHERE t2.a=57 4006 ORDER BY x 4007 } 4008 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 4009 do_test boundary3-2.21.le.10 { 4010 db eval { 4011 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 4012 WHERE t2.a=57 4013 ORDER BY t1.rowid 4014 } 4015 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57} 4016 do_test boundary3-2.21.le.11 { 4017 db eval { 4018 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 4019 WHERE t2.a=57 4020 ORDER BY t1.rowid DESC 4021 } 4022 } {57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 4023 do_test boundary3-2.22.1 { 4024 db eval { 4025 SELECT t1.* FROM t1, t2 WHERE t1.rowid=-8388608 AND t2.a=t1.a 4026 } 4027 } {37 ffffffffff800000} 4028 do_test boundary3-2.22.2 { 4029 db eval { 4030 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='ffffffffff800000' 4031 } 4032 } {-8388608 37} 4033 do_test boundary3-2.22.3 { 4034 db eval { 4035 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=37 4036 } 4037 } {-8388608 ffffffffff800000} 4038 do_test boundary3-2.22.gt.1 { 4039 db eval { 4040 SELECT t2.a FROM t1 JOIN t2 USING(a) 4041 WHERE t1.rowid > -8388608 ORDER BY t2.a 4042 } 4043 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 38 39 40 41 42 43 45 46 48 49 50 51 52 53 54 56 57 59 60 61 62} 4044 do_test boundary3-2.22.gt.2 { 4045 db eval { 4046 SELECT t2.a FROM t2 NATURAL JOIN t1 4047 WHERE t1.rowid > -8388608 ORDER BY t1.a DESC 4048 } 4049 } {62 61 60 59 57 56 54 53 52 51 50 49 48 46 45 43 42 41 40 39 38 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 4050 do_test boundary3-2.22.gt.3 { 4051 db eval { 4052 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 4053 WHERE t2.a=37 4054 ORDER BY t1.rowid 4055 } 4056 } {29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4057 do_test boundary3-2.22.gt.4 { 4058 db eval { 4059 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 4060 WHERE t2.a=37 4061 ORDER BY t1.rowid DESC 4062 } 4063 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29} 4064 do_test boundary3-2.22.gt.5 { 4065 db eval { 4066 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 4067 WHERE t2.a=37 4068 ORDER BY x 4069 } 4070 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 29 32 54 53 52 33 38} 4071 do_test boundary3-2.22.gt.10 { 4072 db eval { 4073 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 4074 WHERE t2.a=37 4075 ORDER BY t1.rowid 4076 } 4077 } {29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4078 do_test boundary3-2.22.gt.11 { 4079 db eval { 4080 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 4081 WHERE t2.a=37 4082 ORDER BY t1.rowid DESC 4083 } 4084 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29} 4085 do_test boundary3-2.22.ge.1 { 4086 db eval { 4087 SELECT t2.a FROM t1 JOIN t2 USING(a) 4088 WHERE t1.rowid >= -8388608 ORDER BY t2.a 4089 } 4090 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 45 46 48 49 50 51 52 53 54 56 57 59 60 61 62} 4091 do_test boundary3-2.22.ge.2 { 4092 db eval { 4093 SELECT t2.a FROM t2 NATURAL JOIN t1 4094 WHERE t1.rowid >= -8388608 ORDER BY t1.a DESC 4095 } 4096 } {62 61 60 59 57 56 54 53 52 51 50 49 48 46 45 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 4097 do_test boundary3-2.22.ge.3 { 4098 db eval { 4099 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 4100 WHERE t2.a=37 4101 ORDER BY t1.rowid 4102 } 4103 } {37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4104 do_test boundary3-2.22.ge.4 { 4105 db eval { 4106 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 4107 WHERE t2.a=37 4108 ORDER BY t1.rowid DESC 4109 } 4110 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37} 4111 do_test boundary3-2.22.ge.5 { 4112 db eval { 4113 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 4114 WHERE t2.a=37 4115 ORDER BY x 4116 } 4117 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 37 29 32 54 53 52 33 38} 4118 do_test boundary3-2.22.ge.10 { 4119 db eval { 4120 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 4121 WHERE t2.a=37 4122 ORDER BY t1.rowid 4123 } 4124 } {37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4125 do_test boundary3-2.22.ge.11 { 4126 db eval { 4127 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 4128 WHERE t2.a=37 4129 ORDER BY t1.rowid DESC 4130 } 4131 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37} 4132 do_test boundary3-2.22.lt.1 { 4133 db eval { 4134 SELECT t2.a FROM t1 JOIN t2 USING(a) 4135 WHERE t1.rowid < -8388608 ORDER BY t2.a 4136 } 4137 } {1 2 11 21 44 47 55 58 63 64} 4138 do_test boundary3-2.22.lt.2 { 4139 db eval { 4140 SELECT t2.a FROM t2 NATURAL JOIN t1 4141 WHERE t1.rowid < -8388608 ORDER BY t1.a DESC 4142 } 4143 } {64 63 58 55 47 44 21 11 2 1} 4144 do_test boundary3-2.22.lt.3 { 4145 db eval { 4146 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 4147 WHERE t2.a=37 4148 ORDER BY t1.rowid 4149 } 4150 } {55 2 64 21 44 58 63 47 11 1} 4151 do_test boundary3-2.22.lt.4 { 4152 db eval { 4153 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 4154 WHERE t2.a=37 4155 ORDER BY t1.rowid DESC 4156 } 4157 } {1 11 47 63 58 44 21 64 2 55} 4158 do_test boundary3-2.22.lt.5 { 4159 db eval { 4160 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 4161 WHERE t2.a=37 4162 ORDER BY x 4163 } 4164 } {55 2 64 21 44 58 63 47 11 1} 4165 do_test boundary3-2.22.lt.10 { 4166 db eval { 4167 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 4168 WHERE t2.a=37 4169 ORDER BY t1.rowid 4170 } 4171 } {55 2 64 21 44 58 63 47 11 1} 4172 do_test boundary3-2.22.lt.11 { 4173 db eval { 4174 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 4175 WHERE t2.a=37 4176 ORDER BY t1.rowid DESC 4177 } 4178 } {1 11 47 63 58 44 21 64 2 55} 4179 do_test boundary3-2.22.le.1 { 4180 db eval { 4181 SELECT t2.a FROM t1 JOIN t2 USING(a) 4182 WHERE t1.rowid <= -8388608 ORDER BY t2.a 4183 } 4184 } {1 2 11 21 37 44 47 55 58 63 64} 4185 do_test boundary3-2.22.le.2 { 4186 db eval { 4187 SELECT t2.a FROM t2 NATURAL JOIN t1 4188 WHERE t1.rowid <= -8388608 ORDER BY t1.a DESC 4189 } 4190 } {64 63 58 55 47 44 37 21 11 2 1} 4191 do_test boundary3-2.22.le.3 { 4192 db eval { 4193 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 4194 WHERE t2.a=37 4195 ORDER BY t1.rowid 4196 } 4197 } {55 2 64 21 44 58 63 47 11 1 37} 4198 do_test boundary3-2.22.le.4 { 4199 db eval { 4200 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 4201 WHERE t2.a=37 4202 ORDER BY t1.rowid DESC 4203 } 4204 } {37 1 11 47 63 58 44 21 64 2 55} 4205 do_test boundary3-2.22.le.5 { 4206 db eval { 4207 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 4208 WHERE t2.a=37 4209 ORDER BY x 4210 } 4211 } {55 2 64 21 44 58 63 47 11 1 37} 4212 do_test boundary3-2.22.le.10 { 4213 db eval { 4214 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 4215 WHERE t2.a=37 4216 ORDER BY t1.rowid 4217 } 4218 } {55 2 64 21 44 58 63 47 11 1 37} 4219 do_test boundary3-2.22.le.11 { 4220 db eval { 4221 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 4222 WHERE t2.a=37 4223 ORDER BY t1.rowid DESC 4224 } 4225 } {37 1 11 47 63 58 44 21 64 2 55} 4226 do_test boundary3-2.23.1 { 4227 db eval { 4228 SELECT t1.* FROM t1, t2 WHERE t1.rowid=549755813888 AND t2.a=t1.a 4229 } 4230 } {35 0000008000000000} 4231 do_test boundary3-2.23.2 { 4232 db eval { 4233 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000008000000000' 4234 } 4235 } {549755813888 35} 4236 do_test boundary3-2.23.3 { 4237 db eval { 4238 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=35 4239 } 4240 } {549755813888 0000008000000000} 4241 do_test boundary3-2.23.gt.1 { 4242 db eval { 4243 SELECT t2.a FROM t1 JOIN t2 USING(a) 4244 WHERE t1.rowid > 549755813888 ORDER BY t2.a 4245 } 4246 } {3 7 10 13 17 19 25 26 27 28 34 43 45 56 57} 4247 do_test boundary3-2.23.gt.2 { 4248 db eval { 4249 SELECT t2.a FROM t2 NATURAL JOIN t1 4250 WHERE t1.rowid > 549755813888 ORDER BY t1.a DESC 4251 } 4252 } {57 56 45 43 34 28 27 26 25 19 17 13 10 7 3} 4253 do_test boundary3-2.23.gt.3 { 4254 db eval { 4255 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 4256 WHERE t2.a=35 4257 ORDER BY t1.rowid 4258 } 4259 } {57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4260 do_test boundary3-2.23.gt.4 { 4261 db eval { 4262 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 4263 WHERE t2.a=35 4264 ORDER BY t1.rowid DESC 4265 } 4266 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57} 4267 do_test boundary3-2.23.gt.5 { 4268 db eval { 4269 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 4270 WHERE t2.a=35 4271 ORDER BY x 4272 } 4273 } {57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4274 do_test boundary3-2.23.gt.10 { 4275 db eval { 4276 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 4277 WHERE t2.a=35 4278 ORDER BY t1.rowid 4279 } 4280 } {57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4281 do_test boundary3-2.23.gt.11 { 4282 db eval { 4283 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 4284 WHERE t2.a=35 4285 ORDER BY t1.rowid DESC 4286 } 4287 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57} 4288 do_test boundary3-2.23.ge.1 { 4289 db eval { 4290 SELECT t2.a FROM t1 JOIN t2 USING(a) 4291 WHERE t1.rowid >= 549755813888 ORDER BY t2.a 4292 } 4293 } {3 7 10 13 17 19 25 26 27 28 34 35 43 45 56 57} 4294 do_test boundary3-2.23.ge.2 { 4295 db eval { 4296 SELECT t2.a FROM t2 NATURAL JOIN t1 4297 WHERE t1.rowid >= 549755813888 ORDER BY t1.a DESC 4298 } 4299 } {57 56 45 43 35 34 28 27 26 25 19 17 13 10 7 3} 4300 do_test boundary3-2.23.ge.3 { 4301 db eval { 4302 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 4303 WHERE t2.a=35 4304 ORDER BY t1.rowid 4305 } 4306 } {35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4307 do_test boundary3-2.23.ge.4 { 4308 db eval { 4309 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 4310 WHERE t2.a=35 4311 ORDER BY t1.rowid DESC 4312 } 4313 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35} 4314 do_test boundary3-2.23.ge.5 { 4315 db eval { 4316 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 4317 WHERE t2.a=35 4318 ORDER BY x 4319 } 4320 } {35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4321 do_test boundary3-2.23.ge.10 { 4322 db eval { 4323 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 4324 WHERE t2.a=35 4325 ORDER BY t1.rowid 4326 } 4327 } {35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4328 do_test boundary3-2.23.ge.11 { 4329 db eval { 4330 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 4331 WHERE t2.a=35 4332 ORDER BY t1.rowid DESC 4333 } 4334 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35} 4335 do_test boundary3-2.23.lt.1 { 4336 db eval { 4337 SELECT t2.a FROM t1 JOIN t2 USING(a) 4338 WHERE t1.rowid < 549755813888 ORDER BY t2.a 4339 } 4340 } {1 2 4 5 6 8 9 11 12 14 15 16 18 20 21 22 23 24 29 30 31 32 33 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 58 59 60 61 62 63 64} 4341 do_test boundary3-2.23.lt.2 { 4342 db eval { 4343 SELECT t2.a FROM t2 NATURAL JOIN t1 4344 WHERE t1.rowid < 549755813888 ORDER BY t1.a DESC 4345 } 4346 } {64 63 62 61 60 59 58 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 33 32 31 30 29 24 23 22 21 20 18 16 15 14 12 11 9 8 6 5 4 2 1} 4347 do_test boundary3-2.23.lt.3 { 4348 db eval { 4349 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 4350 WHERE t2.a=35 4351 ORDER BY t1.rowid 4352 } 4353 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46} 4354 do_test boundary3-2.23.lt.4 { 4355 db eval { 4356 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 4357 WHERE t2.a=35 4358 ORDER BY t1.rowid DESC 4359 } 4360 } {46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 4361 do_test boundary3-2.23.lt.5 { 4362 db eval { 4363 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 4364 WHERE t2.a=35 4365 ORDER BY x 4366 } 4367 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 4368 do_test boundary3-2.23.lt.10 { 4369 db eval { 4370 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 4371 WHERE t2.a=35 4372 ORDER BY t1.rowid 4373 } 4374 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46} 4375 do_test boundary3-2.23.lt.11 { 4376 db eval { 4377 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 4378 WHERE t2.a=35 4379 ORDER BY t1.rowid DESC 4380 } 4381 } {46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 4382 do_test boundary3-2.23.le.1 { 4383 db eval { 4384 SELECT t2.a FROM t1 JOIN t2 USING(a) 4385 WHERE t1.rowid <= 549755813888 ORDER BY t2.a 4386 } 4387 } {1 2 4 5 6 8 9 11 12 14 15 16 18 20 21 22 23 24 29 30 31 32 33 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 58 59 60 61 62 63 64} 4388 do_test boundary3-2.23.le.2 { 4389 db eval { 4390 SELECT t2.a FROM t2 NATURAL JOIN t1 4391 WHERE t1.rowid <= 549755813888 ORDER BY t1.a DESC 4392 } 4393 } {64 63 62 61 60 59 58 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 33 32 31 30 29 24 23 22 21 20 18 16 15 14 12 11 9 8 6 5 4 2 1} 4394 do_test boundary3-2.23.le.3 { 4395 db eval { 4396 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 4397 WHERE t2.a=35 4398 ORDER BY t1.rowid 4399 } 4400 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35} 4401 do_test boundary3-2.23.le.4 { 4402 db eval { 4403 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 4404 WHERE t2.a=35 4405 ORDER BY t1.rowid DESC 4406 } 4407 } {35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 4408 do_test boundary3-2.23.le.5 { 4409 db eval { 4410 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 4411 WHERE t2.a=35 4412 ORDER BY x 4413 } 4414 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 4415 do_test boundary3-2.23.le.10 { 4416 db eval { 4417 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 4418 WHERE t2.a=35 4419 ORDER BY t1.rowid 4420 } 4421 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35} 4422 do_test boundary3-2.23.le.11 { 4423 db eval { 4424 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 4425 WHERE t2.a=35 4426 ORDER BY t1.rowid DESC 4427 } 4428 } {35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 4429 do_test boundary3-2.24.1 { 4430 db eval { 4431 SELECT t1.* FROM t1, t2 WHERE t1.rowid=8388607 AND t2.a=t1.a 4432 } 4433 } {18 00000000007fffff} 4434 do_test boundary3-2.24.2 { 4435 db eval { 4436 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='00000000007fffff' 4437 } 4438 } {8388607 18} 4439 do_test boundary3-2.24.3 { 4440 db eval { 4441 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=18 4442 } 4443 } {8388607 00000000007fffff} 4444 do_test boundary3-2.24.gt.1 { 4445 db eval { 4446 SELECT t2.a FROM t1 JOIN t2 USING(a) 4447 WHERE t1.rowid > 8388607 ORDER BY t2.a 4448 } 4449 } {3 6 7 9 10 12 13 14 17 19 20 22 24 25 26 27 28 34 35 36 39 40 43 45 46 51 56 57} 4450 do_test boundary3-2.24.gt.2 { 4451 db eval { 4452 SELECT t2.a FROM t2 NATURAL JOIN t1 4453 WHERE t1.rowid > 8388607 ORDER BY t1.a DESC 4454 } 4455 } {57 56 51 46 45 43 40 39 36 35 34 28 27 26 25 24 22 20 19 17 14 13 12 10 9 7 6 3} 4456 do_test boundary3-2.24.gt.3 { 4457 db eval { 4458 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 4459 WHERE t2.a=18 4460 ORDER BY t1.rowid 4461 } 4462 } {24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4463 do_test boundary3-2.24.gt.4 { 4464 db eval { 4465 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 4466 WHERE t2.a=18 4467 ORDER BY t1.rowid DESC 4468 } 4469 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24} 4470 do_test boundary3-2.24.gt.5 { 4471 db eval { 4472 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 4473 WHERE t2.a=18 4474 ORDER BY x 4475 } 4476 } {24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4477 do_test boundary3-2.24.gt.10 { 4478 db eval { 4479 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 4480 WHERE t2.a=18 4481 ORDER BY t1.rowid 4482 } 4483 } {24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4484 do_test boundary3-2.24.gt.11 { 4485 db eval { 4486 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 4487 WHERE t2.a=18 4488 ORDER BY t1.rowid DESC 4489 } 4490 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24} 4491 do_test boundary3-2.24.ge.1 { 4492 db eval { 4493 SELECT t2.a FROM t1 JOIN t2 USING(a) 4494 WHERE t1.rowid >= 8388607 ORDER BY t2.a 4495 } 4496 } {3 6 7 9 10 12 13 14 17 18 19 20 22 24 25 26 27 28 34 35 36 39 40 43 45 46 51 56 57} 4497 do_test boundary3-2.24.ge.2 { 4498 db eval { 4499 SELECT t2.a FROM t2 NATURAL JOIN t1 4500 WHERE t1.rowid >= 8388607 ORDER BY t1.a DESC 4501 } 4502 } {57 56 51 46 45 43 40 39 36 35 34 28 27 26 25 24 22 20 19 18 17 14 13 12 10 9 7 6 3} 4503 do_test boundary3-2.24.ge.3 { 4504 db eval { 4505 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 4506 WHERE t2.a=18 4507 ORDER BY t1.rowid 4508 } 4509 } {18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4510 do_test boundary3-2.24.ge.4 { 4511 db eval { 4512 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 4513 WHERE t2.a=18 4514 ORDER BY t1.rowid DESC 4515 } 4516 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18} 4517 do_test boundary3-2.24.ge.5 { 4518 db eval { 4519 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 4520 WHERE t2.a=18 4521 ORDER BY x 4522 } 4523 } {18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4524 do_test boundary3-2.24.ge.10 { 4525 db eval { 4526 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 4527 WHERE t2.a=18 4528 ORDER BY t1.rowid 4529 } 4530 } {18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4531 do_test boundary3-2.24.ge.11 { 4532 db eval { 4533 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 4534 WHERE t2.a=18 4535 ORDER BY t1.rowid DESC 4536 } 4537 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18} 4538 do_test boundary3-2.24.lt.1 { 4539 db eval { 4540 SELECT t2.a FROM t1 JOIN t2 USING(a) 4541 WHERE t1.rowid < 8388607 ORDER BY t2.a 4542 } 4543 } {1 2 4 5 8 11 15 16 21 23 29 30 31 32 33 37 38 41 42 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 4544 do_test boundary3-2.24.lt.2 { 4545 db eval { 4546 SELECT t2.a FROM t2 NATURAL JOIN t1 4547 WHERE t1.rowid < 8388607 ORDER BY t1.a DESC 4548 } 4549 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 42 41 38 37 33 32 31 30 29 23 21 16 15 11 8 5 4 2 1} 4550 do_test boundary3-2.24.lt.3 { 4551 db eval { 4552 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 4553 WHERE t2.a=18 4554 ORDER BY t1.rowid 4555 } 4556 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42} 4557 do_test boundary3-2.24.lt.4 { 4558 db eval { 4559 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 4560 WHERE t2.a=18 4561 ORDER BY t1.rowid DESC 4562 } 4563 } {42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 4564 do_test boundary3-2.24.lt.5 { 4565 db eval { 4566 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 4567 WHERE t2.a=18 4568 ORDER BY x 4569 } 4570 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 4571 do_test boundary3-2.24.lt.10 { 4572 db eval { 4573 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 4574 WHERE t2.a=18 4575 ORDER BY t1.rowid 4576 } 4577 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42} 4578 do_test boundary3-2.24.lt.11 { 4579 db eval { 4580 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 4581 WHERE t2.a=18 4582 ORDER BY t1.rowid DESC 4583 } 4584 } {42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 4585 do_test boundary3-2.24.le.1 { 4586 db eval { 4587 SELECT t2.a FROM t1 JOIN t2 USING(a) 4588 WHERE t1.rowid <= 8388607 ORDER BY t2.a 4589 } 4590 } {1 2 4 5 8 11 15 16 18 21 23 29 30 31 32 33 37 38 41 42 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 4591 do_test boundary3-2.24.le.2 { 4592 db eval { 4593 SELECT t2.a FROM t2 NATURAL JOIN t1 4594 WHERE t1.rowid <= 8388607 ORDER BY t1.a DESC 4595 } 4596 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 42 41 38 37 33 32 31 30 29 23 21 18 16 15 11 8 5 4 2 1} 4597 do_test boundary3-2.24.le.3 { 4598 db eval { 4599 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 4600 WHERE t2.a=18 4601 ORDER BY t1.rowid 4602 } 4603 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18} 4604 do_test boundary3-2.24.le.4 { 4605 db eval { 4606 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 4607 WHERE t2.a=18 4608 ORDER BY t1.rowid DESC 4609 } 4610 } {18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 4611 do_test boundary3-2.24.le.5 { 4612 db eval { 4613 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 4614 WHERE t2.a=18 4615 ORDER BY x 4616 } 4617 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 4618 do_test boundary3-2.24.le.10 { 4619 db eval { 4620 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 4621 WHERE t2.a=18 4622 ORDER BY t1.rowid 4623 } 4624 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18} 4625 do_test boundary3-2.24.le.11 { 4626 db eval { 4627 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 4628 WHERE t2.a=18 4629 ORDER BY t1.rowid DESC 4630 } 4631 } {18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 4632 do_test boundary3-2.25.1 { 4633 db eval { 4634 SELECT t1.* FROM t1, t2 WHERE t1.rowid=-3 AND t2.a=t1.a 4635 } 4636 } {52 fffffffffffffffd} 4637 do_test boundary3-2.25.2 { 4638 db eval { 4639 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='fffffffffffffffd' 4640 } 4641 } {-3 52} 4642 do_test boundary3-2.25.3 { 4643 db eval { 4644 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=52 4645 } 4646 } {-3 fffffffffffffffd} 4647 do_test boundary3-2.25.gt.1 { 4648 db eval { 4649 SELECT t2.a FROM t1 JOIN t2 USING(a) 4650 WHERE t1.rowid > -3 ORDER BY t2.a 4651 } 4652 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 33 34 35 36 38 39 40 41 42 43 45 46 48 49 50 51 56 57 59 60 61 62} 4653 do_test boundary3-2.25.gt.2 { 4654 db eval { 4655 SELECT t2.a FROM t2 NATURAL JOIN t1 4656 WHERE t1.rowid > -3 ORDER BY t1.a DESC 4657 } 4658 } {62 61 60 59 57 56 51 50 49 48 46 45 43 42 41 40 39 38 36 35 34 33 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 4659 do_test boundary3-2.25.gt.3 { 4660 db eval { 4661 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 4662 WHERE t2.a=52 4663 ORDER BY t1.rowid 4664 } 4665 } {33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4666 do_test boundary3-2.25.gt.4 { 4667 db eval { 4668 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 4669 WHERE t2.a=52 4670 ORDER BY t1.rowid DESC 4671 } 4672 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33} 4673 do_test boundary3-2.25.gt.5 { 4674 db eval { 4675 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 4676 WHERE t2.a=52 4677 ORDER BY x 4678 } 4679 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 33 38} 4680 do_test boundary3-2.25.gt.10 { 4681 db eval { 4682 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 4683 WHERE t2.a=52 4684 ORDER BY t1.rowid 4685 } 4686 } {33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4687 do_test boundary3-2.25.gt.11 { 4688 db eval { 4689 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 4690 WHERE t2.a=52 4691 ORDER BY t1.rowid DESC 4692 } 4693 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33} 4694 do_test boundary3-2.25.ge.1 { 4695 db eval { 4696 SELECT t2.a FROM t1 JOIN t2 USING(a) 4697 WHERE t1.rowid >= -3 ORDER BY t2.a 4698 } 4699 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 33 34 35 36 38 39 40 41 42 43 45 46 48 49 50 51 52 56 57 59 60 61 62} 4700 do_test boundary3-2.25.ge.2 { 4701 db eval { 4702 SELECT t2.a FROM t2 NATURAL JOIN t1 4703 WHERE t1.rowid >= -3 ORDER BY t1.a DESC 4704 } 4705 } {62 61 60 59 57 56 52 51 50 49 48 46 45 43 42 41 40 39 38 36 35 34 33 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 4706 do_test boundary3-2.25.ge.3 { 4707 db eval { 4708 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 4709 WHERE t2.a=52 4710 ORDER BY t1.rowid 4711 } 4712 } {52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4713 do_test boundary3-2.25.ge.4 { 4714 db eval { 4715 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 4716 WHERE t2.a=52 4717 ORDER BY t1.rowid DESC 4718 } 4719 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52} 4720 do_test boundary3-2.25.ge.5 { 4721 db eval { 4722 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 4723 WHERE t2.a=52 4724 ORDER BY x 4725 } 4726 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 52 33 38} 4727 do_test boundary3-2.25.ge.10 { 4728 db eval { 4729 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 4730 WHERE t2.a=52 4731 ORDER BY t1.rowid 4732 } 4733 } {52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4734 do_test boundary3-2.25.ge.11 { 4735 db eval { 4736 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 4737 WHERE t2.a=52 4738 ORDER BY t1.rowid DESC 4739 } 4740 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52} 4741 do_test boundary3-2.25.lt.1 { 4742 db eval { 4743 SELECT t2.a FROM t1 JOIN t2 USING(a) 4744 WHERE t1.rowid < -3 ORDER BY t2.a 4745 } 4746 } {1 2 11 21 29 32 37 44 47 53 54 55 58 63 64} 4747 do_test boundary3-2.25.lt.2 { 4748 db eval { 4749 SELECT t2.a FROM t2 NATURAL JOIN t1 4750 WHERE t1.rowid < -3 ORDER BY t1.a DESC 4751 } 4752 } {64 63 58 55 54 53 47 44 37 32 29 21 11 2 1} 4753 do_test boundary3-2.25.lt.3 { 4754 db eval { 4755 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 4756 WHERE t2.a=52 4757 ORDER BY t1.rowid 4758 } 4759 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53} 4760 do_test boundary3-2.25.lt.4 { 4761 db eval { 4762 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 4763 WHERE t2.a=52 4764 ORDER BY t1.rowid DESC 4765 } 4766 } {53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 4767 do_test boundary3-2.25.lt.5 { 4768 db eval { 4769 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 4770 WHERE t2.a=52 4771 ORDER BY x 4772 } 4773 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53} 4774 do_test boundary3-2.25.lt.10 { 4775 db eval { 4776 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 4777 WHERE t2.a=52 4778 ORDER BY t1.rowid 4779 } 4780 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53} 4781 do_test boundary3-2.25.lt.11 { 4782 db eval { 4783 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 4784 WHERE t2.a=52 4785 ORDER BY t1.rowid DESC 4786 } 4787 } {53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 4788 do_test boundary3-2.25.le.1 { 4789 db eval { 4790 SELECT t2.a FROM t1 JOIN t2 USING(a) 4791 WHERE t1.rowid <= -3 ORDER BY t2.a 4792 } 4793 } {1 2 11 21 29 32 37 44 47 52 53 54 55 58 63 64} 4794 do_test boundary3-2.25.le.2 { 4795 db eval { 4796 SELECT t2.a FROM t2 NATURAL JOIN t1 4797 WHERE t1.rowid <= -3 ORDER BY t1.a DESC 4798 } 4799 } {64 63 58 55 54 53 52 47 44 37 32 29 21 11 2 1} 4800 do_test boundary3-2.25.le.3 { 4801 db eval { 4802 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 4803 WHERE t2.a=52 4804 ORDER BY t1.rowid 4805 } 4806 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52} 4807 do_test boundary3-2.25.le.4 { 4808 db eval { 4809 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 4810 WHERE t2.a=52 4811 ORDER BY t1.rowid DESC 4812 } 4813 } {52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 4814 do_test boundary3-2.25.le.5 { 4815 db eval { 4816 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 4817 WHERE t2.a=52 4818 ORDER BY x 4819 } 4820 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52} 4821 do_test boundary3-2.25.le.10 { 4822 db eval { 4823 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 4824 WHERE t2.a=52 4825 ORDER BY t1.rowid 4826 } 4827 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52} 4828 do_test boundary3-2.25.le.11 { 4829 db eval { 4830 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 4831 WHERE t2.a=52 4832 ORDER BY t1.rowid DESC 4833 } 4834 } {52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 4835 do_test boundary3-2.26.1 { 4836 db eval { 4837 SELECT t1.* FROM t1, t2 WHERE t1.rowid=0 AND t2.a=t1.a 4838 } 4839 } {59 0000000000000000} 4840 do_test boundary3-2.26.2 { 4841 db eval { 4842 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000000000000' 4843 } 4844 } {0 59} 4845 do_test boundary3-2.26.3 { 4846 db eval { 4847 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=59 4848 } 4849 } {0 0000000000000000} 4850 do_test boundary3-2.26.gt.1 { 4851 db eval { 4852 SELECT t2.a FROM t1 JOIN t2 USING(a) 4853 WHERE t1.rowid > 0 ORDER BY t2.a 4854 } 4855 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 34 35 36 39 40 41 42 43 45 46 48 49 50 51 56 57 60 61 62} 4856 do_test boundary3-2.26.gt.2 { 4857 db eval { 4858 SELECT t2.a FROM t2 NATURAL JOIN t1 4859 WHERE t1.rowid > 0 ORDER BY t1.a DESC 4860 } 4861 } {62 61 60 57 56 51 50 49 48 46 45 43 42 41 40 39 36 35 34 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 4862 do_test boundary3-2.26.gt.3 { 4863 db eval { 4864 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 4865 WHERE t2.a=59 4866 ORDER BY t1.rowid 4867 } 4868 } {60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4869 do_test boundary3-2.26.gt.4 { 4870 db eval { 4871 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 4872 WHERE t2.a=59 4873 ORDER BY t1.rowid DESC 4874 } 4875 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60} 4876 do_test boundary3-2.26.gt.5 { 4877 db eval { 4878 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 4879 WHERE t2.a=59 4880 ORDER BY x 4881 } 4882 } {60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4883 do_test boundary3-2.26.gt.10 { 4884 db eval { 4885 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 4886 WHERE t2.a=59 4887 ORDER BY t1.rowid 4888 } 4889 } {60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4890 do_test boundary3-2.26.gt.11 { 4891 db eval { 4892 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 4893 WHERE t2.a=59 4894 ORDER BY t1.rowid DESC 4895 } 4896 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60} 4897 do_test boundary3-2.26.ge.1 { 4898 db eval { 4899 SELECT t2.a FROM t1 JOIN t2 USING(a) 4900 WHERE t1.rowid >= 0 ORDER BY t2.a 4901 } 4902 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 34 35 36 39 40 41 42 43 45 46 48 49 50 51 56 57 59 60 61 62} 4903 do_test boundary3-2.26.ge.2 { 4904 db eval { 4905 SELECT t2.a FROM t2 NATURAL JOIN t1 4906 WHERE t1.rowid >= 0 ORDER BY t1.a DESC 4907 } 4908 } {62 61 60 59 57 56 51 50 49 48 46 45 43 42 41 40 39 36 35 34 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 4909 do_test boundary3-2.26.ge.3 { 4910 db eval { 4911 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 4912 WHERE t2.a=59 4913 ORDER BY t1.rowid 4914 } 4915 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4916 do_test boundary3-2.26.ge.4 { 4917 db eval { 4918 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 4919 WHERE t2.a=59 4920 ORDER BY t1.rowid DESC 4921 } 4922 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59} 4923 do_test boundary3-2.26.ge.5 { 4924 db eval { 4925 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 4926 WHERE t2.a=59 4927 ORDER BY x 4928 } 4929 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4930 do_test boundary3-2.26.ge.10 { 4931 db eval { 4932 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 4933 WHERE t2.a=59 4934 ORDER BY t1.rowid 4935 } 4936 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 4937 do_test boundary3-2.26.ge.11 { 4938 db eval { 4939 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 4940 WHERE t2.a=59 4941 ORDER BY t1.rowid DESC 4942 } 4943 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59} 4944 do_test boundary3-2.26.lt.1 { 4945 db eval { 4946 SELECT t2.a FROM t1 JOIN t2 USING(a) 4947 WHERE t1.rowid < 0 ORDER BY t2.a 4948 } 4949 } {1 2 11 21 29 32 33 37 38 44 47 52 53 54 55 58 63 64} 4950 do_test boundary3-2.26.lt.2 { 4951 db eval { 4952 SELECT t2.a FROM t2 NATURAL JOIN t1 4953 WHERE t1.rowid < 0 ORDER BY t1.a DESC 4954 } 4955 } {64 63 58 55 54 53 52 47 44 38 37 33 32 29 21 11 2 1} 4956 do_test boundary3-2.26.lt.3 { 4957 db eval { 4958 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 4959 WHERE t2.a=59 4960 ORDER BY t1.rowid 4961 } 4962 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 4963 do_test boundary3-2.26.lt.4 { 4964 db eval { 4965 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 4966 WHERE t2.a=59 4967 ORDER BY t1.rowid DESC 4968 } 4969 } {38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 4970 do_test boundary3-2.26.lt.5 { 4971 db eval { 4972 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 4973 WHERE t2.a=59 4974 ORDER BY x 4975 } 4976 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 4977 do_test boundary3-2.26.lt.10 { 4978 db eval { 4979 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 4980 WHERE t2.a=59 4981 ORDER BY t1.rowid 4982 } 4983 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 4984 do_test boundary3-2.26.lt.11 { 4985 db eval { 4986 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 4987 WHERE t2.a=59 4988 ORDER BY t1.rowid DESC 4989 } 4990 } {38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 4991 do_test boundary3-2.26.le.1 { 4992 db eval { 4993 SELECT t2.a FROM t1 JOIN t2 USING(a) 4994 WHERE t1.rowid <= 0 ORDER BY t2.a 4995 } 4996 } {1 2 11 21 29 32 33 37 38 44 47 52 53 54 55 58 59 63 64} 4997 do_test boundary3-2.26.le.2 { 4998 db eval { 4999 SELECT t2.a FROM t2 NATURAL JOIN t1 5000 WHERE t1.rowid <= 0 ORDER BY t1.a DESC 5001 } 5002 } {64 63 59 58 55 54 53 52 47 44 38 37 33 32 29 21 11 2 1} 5003 do_test boundary3-2.26.le.3 { 5004 db eval { 5005 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 5006 WHERE t2.a=59 5007 ORDER BY t1.rowid 5008 } 5009 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59} 5010 do_test boundary3-2.26.le.4 { 5011 db eval { 5012 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 5013 WHERE t2.a=59 5014 ORDER BY t1.rowid DESC 5015 } 5016 } {59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5017 do_test boundary3-2.26.le.5 { 5018 db eval { 5019 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 5020 WHERE t2.a=59 5021 ORDER BY x 5022 } 5023 } {59 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 5024 do_test boundary3-2.26.le.10 { 5025 db eval { 5026 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 5027 WHERE t2.a=59 5028 ORDER BY t1.rowid 5029 } 5030 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59} 5031 do_test boundary3-2.26.le.11 { 5032 db eval { 5033 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 5034 WHERE t2.a=59 5035 ORDER BY t1.rowid DESC 5036 } 5037 } {59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5038 do_test boundary3-2.27.1 { 5039 db eval { 5040 SELECT t1.* FROM t1, t2 WHERE t1.rowid=-1 AND t2.a=t1.a 5041 } 5042 } {38 ffffffffffffffff} 5043 do_test boundary3-2.27.2 { 5044 db eval { 5045 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='ffffffffffffffff' 5046 } 5047 } {-1 38} 5048 do_test boundary3-2.27.3 { 5049 db eval { 5050 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=38 5051 } 5052 } {-1 ffffffffffffffff} 5053 do_test boundary3-2.27.gt.1 { 5054 db eval { 5055 SELECT t2.a FROM t1 JOIN t2 USING(a) 5056 WHERE t1.rowid > -1 ORDER BY t2.a 5057 } 5058 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 34 35 36 39 40 41 42 43 45 46 48 49 50 51 56 57 59 60 61 62} 5059 do_test boundary3-2.27.gt.2 { 5060 db eval { 5061 SELECT t2.a FROM t2 NATURAL JOIN t1 5062 WHERE t1.rowid > -1 ORDER BY t1.a DESC 5063 } 5064 } {62 61 60 59 57 56 51 50 49 48 46 45 43 42 41 40 39 36 35 34 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 5065 do_test boundary3-2.27.gt.3 { 5066 db eval { 5067 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 5068 WHERE t2.a=38 5069 ORDER BY t1.rowid 5070 } 5071 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5072 do_test boundary3-2.27.gt.4 { 5073 db eval { 5074 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 5075 WHERE t2.a=38 5076 ORDER BY t1.rowid DESC 5077 } 5078 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59} 5079 do_test boundary3-2.27.gt.5 { 5080 db eval { 5081 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 5082 WHERE t2.a=38 5083 ORDER BY x 5084 } 5085 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5086 do_test boundary3-2.27.gt.10 { 5087 db eval { 5088 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 5089 WHERE t2.a=38 5090 ORDER BY t1.rowid 5091 } 5092 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5093 do_test boundary3-2.27.gt.11 { 5094 db eval { 5095 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 5096 WHERE t2.a=38 5097 ORDER BY t1.rowid DESC 5098 } 5099 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59} 5100 do_test boundary3-2.27.ge.1 { 5101 db eval { 5102 SELECT t2.a FROM t1 JOIN t2 USING(a) 5103 WHERE t1.rowid >= -1 ORDER BY t2.a 5104 } 5105 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 34 35 36 38 39 40 41 42 43 45 46 48 49 50 51 56 57 59 60 61 62} 5106 do_test boundary3-2.27.ge.2 { 5107 db eval { 5108 SELECT t2.a FROM t2 NATURAL JOIN t1 5109 WHERE t1.rowid >= -1 ORDER BY t1.a DESC 5110 } 5111 } {62 61 60 59 57 56 51 50 49 48 46 45 43 42 41 40 39 38 36 35 34 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 5112 do_test boundary3-2.27.ge.3 { 5113 db eval { 5114 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 5115 WHERE t2.a=38 5116 ORDER BY t1.rowid 5117 } 5118 } {38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5119 do_test boundary3-2.27.ge.4 { 5120 db eval { 5121 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 5122 WHERE t2.a=38 5123 ORDER BY t1.rowid DESC 5124 } 5125 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38} 5126 do_test boundary3-2.27.ge.5 { 5127 db eval { 5128 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 5129 WHERE t2.a=38 5130 ORDER BY x 5131 } 5132 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 38} 5133 do_test boundary3-2.27.ge.10 { 5134 db eval { 5135 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 5136 WHERE t2.a=38 5137 ORDER BY t1.rowid 5138 } 5139 } {38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5140 do_test boundary3-2.27.ge.11 { 5141 db eval { 5142 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 5143 WHERE t2.a=38 5144 ORDER BY t1.rowid DESC 5145 } 5146 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38} 5147 do_test boundary3-2.27.lt.1 { 5148 db eval { 5149 SELECT t2.a FROM t1 JOIN t2 USING(a) 5150 WHERE t1.rowid < -1 ORDER BY t2.a 5151 } 5152 } {1 2 11 21 29 32 33 37 44 47 52 53 54 55 58 63 64} 5153 do_test boundary3-2.27.lt.2 { 5154 db eval { 5155 SELECT t2.a FROM t2 NATURAL JOIN t1 5156 WHERE t1.rowid < -1 ORDER BY t1.a DESC 5157 } 5158 } {64 63 58 55 54 53 52 47 44 37 33 32 29 21 11 2 1} 5159 do_test boundary3-2.27.lt.3 { 5160 db eval { 5161 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 5162 WHERE t2.a=38 5163 ORDER BY t1.rowid 5164 } 5165 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33} 5166 do_test boundary3-2.27.lt.4 { 5167 db eval { 5168 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 5169 WHERE t2.a=38 5170 ORDER BY t1.rowid DESC 5171 } 5172 } {33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5173 do_test boundary3-2.27.lt.5 { 5174 db eval { 5175 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 5176 WHERE t2.a=38 5177 ORDER BY x 5178 } 5179 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33} 5180 do_test boundary3-2.27.lt.10 { 5181 db eval { 5182 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 5183 WHERE t2.a=38 5184 ORDER BY t1.rowid 5185 } 5186 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33} 5187 do_test boundary3-2.27.lt.11 { 5188 db eval { 5189 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 5190 WHERE t2.a=38 5191 ORDER BY t1.rowid DESC 5192 } 5193 } {33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5194 do_test boundary3-2.27.le.1 { 5195 db eval { 5196 SELECT t2.a FROM t1 JOIN t2 USING(a) 5197 WHERE t1.rowid <= -1 ORDER BY t2.a 5198 } 5199 } {1 2 11 21 29 32 33 37 38 44 47 52 53 54 55 58 63 64} 5200 do_test boundary3-2.27.le.2 { 5201 db eval { 5202 SELECT t2.a FROM t2 NATURAL JOIN t1 5203 WHERE t1.rowid <= -1 ORDER BY t1.a DESC 5204 } 5205 } {64 63 58 55 54 53 52 47 44 38 37 33 32 29 21 11 2 1} 5206 do_test boundary3-2.27.le.3 { 5207 db eval { 5208 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 5209 WHERE t2.a=38 5210 ORDER BY t1.rowid 5211 } 5212 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 5213 do_test boundary3-2.27.le.4 { 5214 db eval { 5215 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 5216 WHERE t2.a=38 5217 ORDER BY t1.rowid DESC 5218 } 5219 } {38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5220 do_test boundary3-2.27.le.5 { 5221 db eval { 5222 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 5223 WHERE t2.a=38 5224 ORDER BY x 5225 } 5226 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 5227 do_test boundary3-2.27.le.10 { 5228 db eval { 5229 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 5230 WHERE t2.a=38 5231 ORDER BY t1.rowid 5232 } 5233 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 5234 do_test boundary3-2.27.le.11 { 5235 db eval { 5236 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 5237 WHERE t2.a=38 5238 ORDER BY t1.rowid DESC 5239 } 5240 } {38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5241 do_test boundary3-2.28.1 { 5242 db eval { 5243 SELECT t1.* FROM t1, t2 WHERE t1.rowid=-2 AND t2.a=t1.a 5244 } 5245 } {33 fffffffffffffffe} 5246 do_test boundary3-2.28.2 { 5247 db eval { 5248 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='fffffffffffffffe' 5249 } 5250 } {-2 33} 5251 do_test boundary3-2.28.3 { 5252 db eval { 5253 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=33 5254 } 5255 } {-2 fffffffffffffffe} 5256 do_test boundary3-2.28.gt.1 { 5257 db eval { 5258 SELECT t2.a FROM t1 JOIN t2 USING(a) 5259 WHERE t1.rowid > -2 ORDER BY t2.a 5260 } 5261 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 34 35 36 38 39 40 41 42 43 45 46 48 49 50 51 56 57 59 60 61 62} 5262 do_test boundary3-2.28.gt.2 { 5263 db eval { 5264 SELECT t2.a FROM t2 NATURAL JOIN t1 5265 WHERE t1.rowid > -2 ORDER BY t1.a DESC 5266 } 5267 } {62 61 60 59 57 56 51 50 49 48 46 45 43 42 41 40 39 38 36 35 34 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 5268 do_test boundary3-2.28.gt.3 { 5269 db eval { 5270 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 5271 WHERE t2.a=33 5272 ORDER BY t1.rowid 5273 } 5274 } {38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5275 do_test boundary3-2.28.gt.4 { 5276 db eval { 5277 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 5278 WHERE t2.a=33 5279 ORDER BY t1.rowid DESC 5280 } 5281 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38} 5282 do_test boundary3-2.28.gt.5 { 5283 db eval { 5284 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 5285 WHERE t2.a=33 5286 ORDER BY x 5287 } 5288 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 38} 5289 do_test boundary3-2.28.gt.10 { 5290 db eval { 5291 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 5292 WHERE t2.a=33 5293 ORDER BY t1.rowid 5294 } 5295 } {38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5296 do_test boundary3-2.28.gt.11 { 5297 db eval { 5298 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 5299 WHERE t2.a=33 5300 ORDER BY t1.rowid DESC 5301 } 5302 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38} 5303 do_test boundary3-2.28.ge.1 { 5304 db eval { 5305 SELECT t2.a FROM t1 JOIN t2 USING(a) 5306 WHERE t1.rowid >= -2 ORDER BY t2.a 5307 } 5308 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 33 34 35 36 38 39 40 41 42 43 45 46 48 49 50 51 56 57 59 60 61 62} 5309 do_test boundary3-2.28.ge.2 { 5310 db eval { 5311 SELECT t2.a FROM t2 NATURAL JOIN t1 5312 WHERE t1.rowid >= -2 ORDER BY t1.a DESC 5313 } 5314 } {62 61 60 59 57 56 51 50 49 48 46 45 43 42 41 40 39 38 36 35 34 33 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 5315 do_test boundary3-2.28.ge.3 { 5316 db eval { 5317 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 5318 WHERE t2.a=33 5319 ORDER BY t1.rowid 5320 } 5321 } {33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5322 do_test boundary3-2.28.ge.4 { 5323 db eval { 5324 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 5325 WHERE t2.a=33 5326 ORDER BY t1.rowid DESC 5327 } 5328 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33} 5329 do_test boundary3-2.28.ge.5 { 5330 db eval { 5331 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 5332 WHERE t2.a=33 5333 ORDER BY x 5334 } 5335 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 33 38} 5336 do_test boundary3-2.28.ge.10 { 5337 db eval { 5338 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 5339 WHERE t2.a=33 5340 ORDER BY t1.rowid 5341 } 5342 } {33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5343 do_test boundary3-2.28.ge.11 { 5344 db eval { 5345 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 5346 WHERE t2.a=33 5347 ORDER BY t1.rowid DESC 5348 } 5349 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33} 5350 do_test boundary3-2.28.lt.1 { 5351 db eval { 5352 SELECT t2.a FROM t1 JOIN t2 USING(a) 5353 WHERE t1.rowid < -2 ORDER BY t2.a 5354 } 5355 } {1 2 11 21 29 32 37 44 47 52 53 54 55 58 63 64} 5356 do_test boundary3-2.28.lt.2 { 5357 db eval { 5358 SELECT t2.a FROM t2 NATURAL JOIN t1 5359 WHERE t1.rowid < -2 ORDER BY t1.a DESC 5360 } 5361 } {64 63 58 55 54 53 52 47 44 37 32 29 21 11 2 1} 5362 do_test boundary3-2.28.lt.3 { 5363 db eval { 5364 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 5365 WHERE t2.a=33 5366 ORDER BY t1.rowid 5367 } 5368 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52} 5369 do_test boundary3-2.28.lt.4 { 5370 db eval { 5371 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 5372 WHERE t2.a=33 5373 ORDER BY t1.rowid DESC 5374 } 5375 } {52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5376 do_test boundary3-2.28.lt.5 { 5377 db eval { 5378 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 5379 WHERE t2.a=33 5380 ORDER BY x 5381 } 5382 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52} 5383 do_test boundary3-2.28.lt.10 { 5384 db eval { 5385 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 5386 WHERE t2.a=33 5387 ORDER BY t1.rowid 5388 } 5389 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52} 5390 do_test boundary3-2.28.lt.11 { 5391 db eval { 5392 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 5393 WHERE t2.a=33 5394 ORDER BY t1.rowid DESC 5395 } 5396 } {52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5397 do_test boundary3-2.28.le.1 { 5398 db eval { 5399 SELECT t2.a FROM t1 JOIN t2 USING(a) 5400 WHERE t1.rowid <= -2 ORDER BY t2.a 5401 } 5402 } {1 2 11 21 29 32 33 37 44 47 52 53 54 55 58 63 64} 5403 do_test boundary3-2.28.le.2 { 5404 db eval { 5405 SELECT t2.a FROM t2 NATURAL JOIN t1 5406 WHERE t1.rowid <= -2 ORDER BY t1.a DESC 5407 } 5408 } {64 63 58 55 54 53 52 47 44 37 33 32 29 21 11 2 1} 5409 do_test boundary3-2.28.le.3 { 5410 db eval { 5411 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 5412 WHERE t2.a=33 5413 ORDER BY t1.rowid 5414 } 5415 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33} 5416 do_test boundary3-2.28.le.4 { 5417 db eval { 5418 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 5419 WHERE t2.a=33 5420 ORDER BY t1.rowid DESC 5421 } 5422 } {33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5423 do_test boundary3-2.28.le.5 { 5424 db eval { 5425 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 5426 WHERE t2.a=33 5427 ORDER BY x 5428 } 5429 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33} 5430 do_test boundary3-2.28.le.10 { 5431 db eval { 5432 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 5433 WHERE t2.a=33 5434 ORDER BY t1.rowid 5435 } 5436 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33} 5437 do_test boundary3-2.28.le.11 { 5438 db eval { 5439 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 5440 WHERE t2.a=33 5441 ORDER BY t1.rowid DESC 5442 } 5443 } {33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5444 do_test boundary3-2.29.1 { 5445 db eval { 5446 SELECT t1.* FROM t1, t2 WHERE t1.rowid=2097152 AND t2.a=t1.a 5447 } 5448 } {42 0000000000200000} 5449 do_test boundary3-2.29.2 { 5450 db eval { 5451 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000000200000' 5452 } 5453 } {2097152 42} 5454 do_test boundary3-2.29.3 { 5455 db eval { 5456 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=42 5457 } 5458 } {2097152 0000000000200000} 5459 do_test boundary3-2.29.gt.1 { 5460 db eval { 5461 SELECT t2.a FROM t1 JOIN t2 USING(a) 5462 WHERE t1.rowid > 2097152 ORDER BY t2.a 5463 } 5464 } {3 6 7 9 10 12 13 14 17 18 19 20 22 24 25 26 27 28 34 35 36 39 40 43 45 46 51 56 57} 5465 do_test boundary3-2.29.gt.2 { 5466 db eval { 5467 SELECT t2.a FROM t2 NATURAL JOIN t1 5468 WHERE t1.rowid > 2097152 ORDER BY t1.a DESC 5469 } 5470 } {57 56 51 46 45 43 40 39 36 35 34 28 27 26 25 24 22 20 19 18 17 14 13 12 10 9 7 6 3} 5471 do_test boundary3-2.29.gt.3 { 5472 db eval { 5473 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 5474 WHERE t2.a=42 5475 ORDER BY t1.rowid 5476 } 5477 } {18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5478 do_test boundary3-2.29.gt.4 { 5479 db eval { 5480 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 5481 WHERE t2.a=42 5482 ORDER BY t1.rowid DESC 5483 } 5484 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18} 5485 do_test boundary3-2.29.gt.5 { 5486 db eval { 5487 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 5488 WHERE t2.a=42 5489 ORDER BY x 5490 } 5491 } {18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5492 do_test boundary3-2.29.gt.10 { 5493 db eval { 5494 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 5495 WHERE t2.a=42 5496 ORDER BY t1.rowid 5497 } 5498 } {18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5499 do_test boundary3-2.29.gt.11 { 5500 db eval { 5501 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 5502 WHERE t2.a=42 5503 ORDER BY t1.rowid DESC 5504 } 5505 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18} 5506 do_test boundary3-2.29.ge.1 { 5507 db eval { 5508 SELECT t2.a FROM t1 JOIN t2 USING(a) 5509 WHERE t1.rowid >= 2097152 ORDER BY t2.a 5510 } 5511 } {3 6 7 9 10 12 13 14 17 18 19 20 22 24 25 26 27 28 34 35 36 39 40 42 43 45 46 51 56 57} 5512 do_test boundary3-2.29.ge.2 { 5513 db eval { 5514 SELECT t2.a FROM t2 NATURAL JOIN t1 5515 WHERE t1.rowid >= 2097152 ORDER BY t1.a DESC 5516 } 5517 } {57 56 51 46 45 43 42 40 39 36 35 34 28 27 26 25 24 22 20 19 18 17 14 13 12 10 9 7 6 3} 5518 do_test boundary3-2.29.ge.3 { 5519 db eval { 5520 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 5521 WHERE t2.a=42 5522 ORDER BY t1.rowid 5523 } 5524 } {42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5525 do_test boundary3-2.29.ge.4 { 5526 db eval { 5527 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 5528 WHERE t2.a=42 5529 ORDER BY t1.rowid DESC 5530 } 5531 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42} 5532 do_test boundary3-2.29.ge.5 { 5533 db eval { 5534 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 5535 WHERE t2.a=42 5536 ORDER BY x 5537 } 5538 } {42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5539 do_test boundary3-2.29.ge.10 { 5540 db eval { 5541 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 5542 WHERE t2.a=42 5543 ORDER BY t1.rowid 5544 } 5545 } {42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5546 do_test boundary3-2.29.ge.11 { 5547 db eval { 5548 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 5549 WHERE t2.a=42 5550 ORDER BY t1.rowid DESC 5551 } 5552 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42} 5553 do_test boundary3-2.29.lt.1 { 5554 db eval { 5555 SELECT t2.a FROM t1 JOIN t2 USING(a) 5556 WHERE t1.rowid < 2097152 ORDER BY t2.a 5557 } 5558 } {1 2 4 5 8 11 15 16 21 23 29 30 31 32 33 37 38 41 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 5559 do_test boundary3-2.29.lt.2 { 5560 db eval { 5561 SELECT t2.a FROM t2 NATURAL JOIN t1 5562 WHERE t1.rowid < 2097152 ORDER BY t1.a DESC 5563 } 5564 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 41 38 37 33 32 31 30 29 23 21 16 15 11 8 5 4 2 1} 5565 do_test boundary3-2.29.lt.3 { 5566 db eval { 5567 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 5568 WHERE t2.a=42 5569 ORDER BY t1.rowid 5570 } 5571 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15} 5572 do_test boundary3-2.29.lt.4 { 5573 db eval { 5574 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 5575 WHERE t2.a=42 5576 ORDER BY t1.rowid DESC 5577 } 5578 } {15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5579 do_test boundary3-2.29.lt.5 { 5580 db eval { 5581 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 5582 WHERE t2.a=42 5583 ORDER BY x 5584 } 5585 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 5586 do_test boundary3-2.29.lt.10 { 5587 db eval { 5588 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 5589 WHERE t2.a=42 5590 ORDER BY t1.rowid 5591 } 5592 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15} 5593 do_test boundary3-2.29.lt.11 { 5594 db eval { 5595 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 5596 WHERE t2.a=42 5597 ORDER BY t1.rowid DESC 5598 } 5599 } {15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5600 do_test boundary3-2.29.le.1 { 5601 db eval { 5602 SELECT t2.a FROM t1 JOIN t2 USING(a) 5603 WHERE t1.rowid <= 2097152 ORDER BY t2.a 5604 } 5605 } {1 2 4 5 8 11 15 16 21 23 29 30 31 32 33 37 38 41 42 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 5606 do_test boundary3-2.29.le.2 { 5607 db eval { 5608 SELECT t2.a FROM t2 NATURAL JOIN t1 5609 WHERE t1.rowid <= 2097152 ORDER BY t1.a DESC 5610 } 5611 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 42 41 38 37 33 32 31 30 29 23 21 16 15 11 8 5 4 2 1} 5612 do_test boundary3-2.29.le.3 { 5613 db eval { 5614 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 5615 WHERE t2.a=42 5616 ORDER BY t1.rowid 5617 } 5618 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42} 5619 do_test boundary3-2.29.le.4 { 5620 db eval { 5621 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 5622 WHERE t2.a=42 5623 ORDER BY t1.rowid DESC 5624 } 5625 } {42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5626 do_test boundary3-2.29.le.5 { 5627 db eval { 5628 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 5629 WHERE t2.a=42 5630 ORDER BY x 5631 } 5632 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 5633 do_test boundary3-2.29.le.10 { 5634 db eval { 5635 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 5636 WHERE t2.a=42 5637 ORDER BY t1.rowid 5638 } 5639 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42} 5640 do_test boundary3-2.29.le.11 { 5641 db eval { 5642 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 5643 WHERE t2.a=42 5644 ORDER BY t1.rowid DESC 5645 } 5646 } {42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5647 do_test boundary3-2.30.1 { 5648 db eval { 5649 SELECT t1.* FROM t1, t2 WHERE t1.rowid=128 AND t2.a=t1.a 5650 } 5651 } {49 0000000000000080} 5652 do_test boundary3-2.30.2 { 5653 db eval { 5654 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000000000080' 5655 } 5656 } {128 49} 5657 do_test boundary3-2.30.3 { 5658 db eval { 5659 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=49 5660 } 5661 } {128 0000000000000080} 5662 do_test boundary3-2.30.gt.1 { 5663 db eval { 5664 SELECT t2.a FROM t1 JOIN t2 USING(a) 5665 WHERE t1.rowid > 128 ORDER BY t2.a 5666 } 5667 } {3 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 34 35 36 39 40 42 43 45 46 48 50 51 56 57 61 62} 5668 do_test boundary3-2.30.gt.2 { 5669 db eval { 5670 SELECT t2.a FROM t2 NATURAL JOIN t1 5671 WHERE t1.rowid > 128 ORDER BY t1.a DESC 5672 } 5673 } {62 61 57 56 51 50 48 46 45 43 42 40 39 36 35 34 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 3} 5674 do_test boundary3-2.30.gt.3 { 5675 db eval { 5676 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 5677 WHERE t2.a=49 5678 ORDER BY t1.rowid 5679 } 5680 } {30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5681 do_test boundary3-2.30.gt.4 { 5682 db eval { 5683 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 5684 WHERE t2.a=49 5685 ORDER BY t1.rowid DESC 5686 } 5687 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30} 5688 do_test boundary3-2.30.gt.5 { 5689 db eval { 5690 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 5691 WHERE t2.a=49 5692 ORDER BY x 5693 } 5694 } {30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5695 do_test boundary3-2.30.gt.10 { 5696 db eval { 5697 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 5698 WHERE t2.a=49 5699 ORDER BY t1.rowid 5700 } 5701 } {30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5702 do_test boundary3-2.30.gt.11 { 5703 db eval { 5704 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 5705 WHERE t2.a=49 5706 ORDER BY t1.rowid DESC 5707 } 5708 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30} 5709 do_test boundary3-2.30.ge.1 { 5710 db eval { 5711 SELECT t2.a FROM t1 JOIN t2 USING(a) 5712 WHERE t1.rowid >= 128 ORDER BY t2.a 5713 } 5714 } {3 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 34 35 36 39 40 42 43 45 46 48 49 50 51 56 57 61 62} 5715 do_test boundary3-2.30.ge.2 { 5716 db eval { 5717 SELECT t2.a FROM t2 NATURAL JOIN t1 5718 WHERE t1.rowid >= 128 ORDER BY t1.a DESC 5719 } 5720 } {62 61 57 56 51 50 49 48 46 45 43 42 40 39 36 35 34 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 3} 5721 do_test boundary3-2.30.ge.3 { 5722 db eval { 5723 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 5724 WHERE t2.a=49 5725 ORDER BY t1.rowid 5726 } 5727 } {49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5728 do_test boundary3-2.30.ge.4 { 5729 db eval { 5730 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 5731 WHERE t2.a=49 5732 ORDER BY t1.rowid DESC 5733 } 5734 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49} 5735 do_test boundary3-2.30.ge.5 { 5736 db eval { 5737 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 5738 WHERE t2.a=49 5739 ORDER BY x 5740 } 5741 } {49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5742 do_test boundary3-2.30.ge.10 { 5743 db eval { 5744 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 5745 WHERE t2.a=49 5746 ORDER BY t1.rowid 5747 } 5748 } {49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5749 do_test boundary3-2.30.ge.11 { 5750 db eval { 5751 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 5752 WHERE t2.a=49 5753 ORDER BY t1.rowid DESC 5754 } 5755 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49} 5756 do_test boundary3-2.30.lt.1 { 5757 db eval { 5758 SELECT t2.a FROM t1 JOIN t2 USING(a) 5759 WHERE t1.rowid < 128 ORDER BY t2.a 5760 } 5761 } {1 2 4 5 11 21 29 31 32 33 37 38 41 44 47 52 53 54 55 58 59 60 63 64} 5762 do_test boundary3-2.30.lt.2 { 5763 db eval { 5764 SELECT t2.a FROM t2 NATURAL JOIN t1 5765 WHERE t1.rowid < 128 ORDER BY t1.a DESC 5766 } 5767 } {64 63 60 59 58 55 54 53 52 47 44 41 38 37 33 32 31 29 21 11 5 4 2 1} 5768 do_test boundary3-2.30.lt.3 { 5769 db eval { 5770 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 5771 WHERE t2.a=49 5772 ORDER BY t1.rowid 5773 } 5774 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4} 5775 do_test boundary3-2.30.lt.4 { 5776 db eval { 5777 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 5778 WHERE t2.a=49 5779 ORDER BY t1.rowid DESC 5780 } 5781 } {4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5782 do_test boundary3-2.30.lt.5 { 5783 db eval { 5784 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 5785 WHERE t2.a=49 5786 ORDER BY x 5787 } 5788 } {59 60 41 5 31 4 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 5789 do_test boundary3-2.30.lt.10 { 5790 db eval { 5791 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 5792 WHERE t2.a=49 5793 ORDER BY t1.rowid 5794 } 5795 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4} 5796 do_test boundary3-2.30.lt.11 { 5797 db eval { 5798 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 5799 WHERE t2.a=49 5800 ORDER BY t1.rowid DESC 5801 } 5802 } {4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5803 do_test boundary3-2.30.le.1 { 5804 db eval { 5805 SELECT t2.a FROM t1 JOIN t2 USING(a) 5806 WHERE t1.rowid <= 128 ORDER BY t2.a 5807 } 5808 } {1 2 4 5 11 21 29 31 32 33 37 38 41 44 47 49 52 53 54 55 58 59 60 63 64} 5809 do_test boundary3-2.30.le.2 { 5810 db eval { 5811 SELECT t2.a FROM t2 NATURAL JOIN t1 5812 WHERE t1.rowid <= 128 ORDER BY t1.a DESC 5813 } 5814 } {64 63 60 59 58 55 54 53 52 49 47 44 41 38 37 33 32 31 29 21 11 5 4 2 1} 5815 do_test boundary3-2.30.le.3 { 5816 db eval { 5817 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 5818 WHERE t2.a=49 5819 ORDER BY t1.rowid 5820 } 5821 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49} 5822 do_test boundary3-2.30.le.4 { 5823 db eval { 5824 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 5825 WHERE t2.a=49 5826 ORDER BY t1.rowid DESC 5827 } 5828 } {49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5829 do_test boundary3-2.30.le.5 { 5830 db eval { 5831 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 5832 WHERE t2.a=49 5833 ORDER BY x 5834 } 5835 } {59 60 41 5 31 4 49 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 5836 do_test boundary3-2.30.le.10 { 5837 db eval { 5838 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 5839 WHERE t2.a=49 5840 ORDER BY t1.rowid 5841 } 5842 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49} 5843 do_test boundary3-2.30.le.11 { 5844 db eval { 5845 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 5846 WHERE t2.a=49 5847 ORDER BY t1.rowid DESC 5848 } 5849 } {49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5850 do_test boundary3-2.31.1 { 5851 db eval { 5852 SELECT t1.* FROM t1, t2 WHERE t1.rowid=255 AND t2.a=t1.a 5853 } 5854 } {30 00000000000000ff} 5855 do_test boundary3-2.31.2 { 5856 db eval { 5857 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='00000000000000ff' 5858 } 5859 } {255 30} 5860 do_test boundary3-2.31.3 { 5861 db eval { 5862 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=30 5863 } 5864 } {255 00000000000000ff} 5865 do_test boundary3-2.31.gt.1 { 5866 db eval { 5867 SELECT t2.a FROM t1 JOIN t2 USING(a) 5868 WHERE t1.rowid > 255 ORDER BY t2.a 5869 } 5870 } {3 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 34 35 36 39 40 42 43 45 46 48 50 51 56 57 61 62} 5871 do_test boundary3-2.31.gt.2 { 5872 db eval { 5873 SELECT t2.a FROM t2 NATURAL JOIN t1 5874 WHERE t1.rowid > 255 ORDER BY t1.a DESC 5875 } 5876 } {62 61 57 56 51 50 48 46 45 43 42 40 39 36 35 34 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 3} 5877 do_test boundary3-2.31.gt.3 { 5878 db eval { 5879 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 5880 WHERE t2.a=30 5881 ORDER BY t1.rowid 5882 } 5883 } {61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5884 do_test boundary3-2.31.gt.4 { 5885 db eval { 5886 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 5887 WHERE t2.a=30 5888 ORDER BY t1.rowid DESC 5889 } 5890 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61} 5891 do_test boundary3-2.31.gt.5 { 5892 db eval { 5893 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 5894 WHERE t2.a=30 5895 ORDER BY x 5896 } 5897 } {61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5898 do_test boundary3-2.31.gt.10 { 5899 db eval { 5900 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 5901 WHERE t2.a=30 5902 ORDER BY t1.rowid 5903 } 5904 } {61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5905 do_test boundary3-2.31.gt.11 { 5906 db eval { 5907 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 5908 WHERE t2.a=30 5909 ORDER BY t1.rowid DESC 5910 } 5911 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61} 5912 do_test boundary3-2.31.ge.1 { 5913 db eval { 5914 SELECT t2.a FROM t1 JOIN t2 USING(a) 5915 WHERE t1.rowid >= 255 ORDER BY t2.a 5916 } 5917 } {3 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 34 35 36 39 40 42 43 45 46 48 50 51 56 57 61 62} 5918 do_test boundary3-2.31.ge.2 { 5919 db eval { 5920 SELECT t2.a FROM t2 NATURAL JOIN t1 5921 WHERE t1.rowid >= 255 ORDER BY t1.a DESC 5922 } 5923 } {62 61 57 56 51 50 48 46 45 43 42 40 39 36 35 34 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 3} 5924 do_test boundary3-2.31.ge.3 { 5925 db eval { 5926 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 5927 WHERE t2.a=30 5928 ORDER BY t1.rowid 5929 } 5930 } {30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5931 do_test boundary3-2.31.ge.4 { 5932 db eval { 5933 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 5934 WHERE t2.a=30 5935 ORDER BY t1.rowid DESC 5936 } 5937 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30} 5938 do_test boundary3-2.31.ge.5 { 5939 db eval { 5940 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 5941 WHERE t2.a=30 5942 ORDER BY x 5943 } 5944 } {30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5945 do_test boundary3-2.31.ge.10 { 5946 db eval { 5947 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 5948 WHERE t2.a=30 5949 ORDER BY t1.rowid 5950 } 5951 } {30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 5952 do_test boundary3-2.31.ge.11 { 5953 db eval { 5954 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 5955 WHERE t2.a=30 5956 ORDER BY t1.rowid DESC 5957 } 5958 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30} 5959 do_test boundary3-2.31.lt.1 { 5960 db eval { 5961 SELECT t2.a FROM t1 JOIN t2 USING(a) 5962 WHERE t1.rowid < 255 ORDER BY t2.a 5963 } 5964 } {1 2 4 5 11 21 29 31 32 33 37 38 41 44 47 49 52 53 54 55 58 59 60 63 64} 5965 do_test boundary3-2.31.lt.2 { 5966 db eval { 5967 SELECT t2.a FROM t2 NATURAL JOIN t1 5968 WHERE t1.rowid < 255 ORDER BY t1.a DESC 5969 } 5970 } {64 63 60 59 58 55 54 53 52 49 47 44 41 38 37 33 32 31 29 21 11 5 4 2 1} 5971 do_test boundary3-2.31.lt.3 { 5972 db eval { 5973 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 5974 WHERE t2.a=30 5975 ORDER BY t1.rowid 5976 } 5977 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49} 5978 do_test boundary3-2.31.lt.4 { 5979 db eval { 5980 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 5981 WHERE t2.a=30 5982 ORDER BY t1.rowid DESC 5983 } 5984 } {49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 5985 do_test boundary3-2.31.lt.5 { 5986 db eval { 5987 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 5988 WHERE t2.a=30 5989 ORDER BY x 5990 } 5991 } {59 60 41 5 31 4 49 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 5992 do_test boundary3-2.31.lt.10 { 5993 db eval { 5994 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 5995 WHERE t2.a=30 5996 ORDER BY t1.rowid 5997 } 5998 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49} 5999 do_test boundary3-2.31.lt.11 { 6000 db eval { 6001 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 6002 WHERE t2.a=30 6003 ORDER BY t1.rowid DESC 6004 } 6005 } {49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 6006 do_test boundary3-2.31.le.1 { 6007 db eval { 6008 SELECT t2.a FROM t1 JOIN t2 USING(a) 6009 WHERE t1.rowid <= 255 ORDER BY t2.a 6010 } 6011 } {1 2 4 5 11 21 29 30 31 32 33 37 38 41 44 47 49 52 53 54 55 58 59 60 63 64} 6012 do_test boundary3-2.31.le.2 { 6013 db eval { 6014 SELECT t2.a FROM t2 NATURAL JOIN t1 6015 WHERE t1.rowid <= 255 ORDER BY t1.a DESC 6016 } 6017 } {64 63 60 59 58 55 54 53 52 49 47 44 41 38 37 33 32 31 30 29 21 11 5 4 2 1} 6018 do_test boundary3-2.31.le.3 { 6019 db eval { 6020 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 6021 WHERE t2.a=30 6022 ORDER BY t1.rowid 6023 } 6024 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30} 6025 do_test boundary3-2.31.le.4 { 6026 db eval { 6027 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 6028 WHERE t2.a=30 6029 ORDER BY t1.rowid DESC 6030 } 6031 } {30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 6032 do_test boundary3-2.31.le.5 { 6033 db eval { 6034 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 6035 WHERE t2.a=30 6036 ORDER BY x 6037 } 6038 } {59 60 41 5 31 4 49 30 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 6039 do_test boundary3-2.31.le.10 { 6040 db eval { 6041 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 6042 WHERE t2.a=30 6043 ORDER BY t1.rowid 6044 } 6045 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30} 6046 do_test boundary3-2.31.le.11 { 6047 db eval { 6048 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 6049 WHERE t2.a=30 6050 ORDER BY t1.rowid DESC 6051 } 6052 } {30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 6053 do_test boundary3-2.32.1 { 6054 db eval { 6055 SELECT t1.* FROM t1, t2 WHERE t1.rowid=-2147483648 AND t2.a=t1.a 6056 } 6057 } {11 ffffffff80000000} 6058 do_test boundary3-2.32.2 { 6059 db eval { 6060 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='ffffffff80000000' 6061 } 6062 } {-2147483648 11} 6063 do_test boundary3-2.32.3 { 6064 db eval { 6065 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=11 6066 } 6067 } {-2147483648 ffffffff80000000} 6068 do_test boundary3-2.32.gt.1 { 6069 db eval { 6070 SELECT t2.a FROM t1 JOIN t2 USING(a) 6071 WHERE t1.rowid > -2147483648 ORDER BY t2.a 6072 } 6073 } {1 3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 45 46 48 49 50 51 52 53 54 56 57 59 60 61 62} 6074 do_test boundary3-2.32.gt.2 { 6075 db eval { 6076 SELECT t2.a FROM t2 NATURAL JOIN t1 6077 WHERE t1.rowid > -2147483648 ORDER BY t1.a DESC 6078 } 6079 } {62 61 60 59 57 56 54 53 52 51 50 49 48 46 45 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3 1} 6080 do_test boundary3-2.32.gt.3 { 6081 db eval { 6082 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 6083 WHERE t2.a=11 6084 ORDER BY t1.rowid 6085 } 6086 } {1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6087 do_test boundary3-2.32.gt.4 { 6088 db eval { 6089 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 6090 WHERE t2.a=11 6091 ORDER BY t1.rowid DESC 6092 } 6093 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1} 6094 do_test boundary3-2.32.gt.5 { 6095 db eval { 6096 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 6097 WHERE t2.a=11 6098 ORDER BY x 6099 } 6100 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 1 37 29 32 54 53 52 33 38} 6101 do_test boundary3-2.32.gt.10 { 6102 db eval { 6103 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 6104 WHERE t2.a=11 6105 ORDER BY t1.rowid 6106 } 6107 } {1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6108 do_test boundary3-2.32.gt.11 { 6109 db eval { 6110 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 6111 WHERE t2.a=11 6112 ORDER BY t1.rowid DESC 6113 } 6114 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1} 6115 do_test boundary3-2.32.ge.1 { 6116 db eval { 6117 SELECT t2.a FROM t1 JOIN t2 USING(a) 6118 WHERE t1.rowid >= -2147483648 ORDER BY t2.a 6119 } 6120 } {1 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 45 46 48 49 50 51 52 53 54 56 57 59 60 61 62} 6121 do_test boundary3-2.32.ge.2 { 6122 db eval { 6123 SELECT t2.a FROM t2 NATURAL JOIN t1 6124 WHERE t1.rowid >= -2147483648 ORDER BY t1.a DESC 6125 } 6126 } {62 61 60 59 57 56 54 53 52 51 50 49 48 46 45 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 1} 6127 do_test boundary3-2.32.ge.3 { 6128 db eval { 6129 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 6130 WHERE t2.a=11 6131 ORDER BY t1.rowid 6132 } 6133 } {11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6134 do_test boundary3-2.32.ge.4 { 6135 db eval { 6136 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 6137 WHERE t2.a=11 6138 ORDER BY t1.rowid DESC 6139 } 6140 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11} 6141 do_test boundary3-2.32.ge.5 { 6142 db eval { 6143 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 6144 WHERE t2.a=11 6145 ORDER BY x 6146 } 6147 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 11 1 37 29 32 54 53 52 33 38} 6148 do_test boundary3-2.32.ge.10 { 6149 db eval { 6150 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 6151 WHERE t2.a=11 6152 ORDER BY t1.rowid 6153 } 6154 } {11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6155 do_test boundary3-2.32.ge.11 { 6156 db eval { 6157 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 6158 WHERE t2.a=11 6159 ORDER BY t1.rowid DESC 6160 } 6161 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11} 6162 do_test boundary3-2.32.lt.1 { 6163 db eval { 6164 SELECT t2.a FROM t1 JOIN t2 USING(a) 6165 WHERE t1.rowid < -2147483648 ORDER BY t2.a 6166 } 6167 } {2 21 44 47 55 58 63 64} 6168 do_test boundary3-2.32.lt.2 { 6169 db eval { 6170 SELECT t2.a FROM t2 NATURAL JOIN t1 6171 WHERE t1.rowid < -2147483648 ORDER BY t1.a DESC 6172 } 6173 } {64 63 58 55 47 44 21 2} 6174 do_test boundary3-2.32.lt.3 { 6175 db eval { 6176 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 6177 WHERE t2.a=11 6178 ORDER BY t1.rowid 6179 } 6180 } {55 2 64 21 44 58 63 47} 6181 do_test boundary3-2.32.lt.4 { 6182 db eval { 6183 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 6184 WHERE t2.a=11 6185 ORDER BY t1.rowid DESC 6186 } 6187 } {47 63 58 44 21 64 2 55} 6188 do_test boundary3-2.32.lt.5 { 6189 db eval { 6190 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 6191 WHERE t2.a=11 6192 ORDER BY x 6193 } 6194 } {55 2 64 21 44 58 63 47} 6195 do_test boundary3-2.32.lt.10 { 6196 db eval { 6197 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 6198 WHERE t2.a=11 6199 ORDER BY t1.rowid 6200 } 6201 } {55 2 64 21 44 58 63 47} 6202 do_test boundary3-2.32.lt.11 { 6203 db eval { 6204 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 6205 WHERE t2.a=11 6206 ORDER BY t1.rowid DESC 6207 } 6208 } {47 63 58 44 21 64 2 55} 6209 do_test boundary3-2.32.le.1 { 6210 db eval { 6211 SELECT t2.a FROM t1 JOIN t2 USING(a) 6212 WHERE t1.rowid <= -2147483648 ORDER BY t2.a 6213 } 6214 } {2 11 21 44 47 55 58 63 64} 6215 do_test boundary3-2.32.le.2 { 6216 db eval { 6217 SELECT t2.a FROM t2 NATURAL JOIN t1 6218 WHERE t1.rowid <= -2147483648 ORDER BY t1.a DESC 6219 } 6220 } {64 63 58 55 47 44 21 11 2} 6221 do_test boundary3-2.32.le.3 { 6222 db eval { 6223 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 6224 WHERE t2.a=11 6225 ORDER BY t1.rowid 6226 } 6227 } {55 2 64 21 44 58 63 47 11} 6228 do_test boundary3-2.32.le.4 { 6229 db eval { 6230 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 6231 WHERE t2.a=11 6232 ORDER BY t1.rowid DESC 6233 } 6234 } {11 47 63 58 44 21 64 2 55} 6235 do_test boundary3-2.32.le.5 { 6236 db eval { 6237 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 6238 WHERE t2.a=11 6239 ORDER BY x 6240 } 6241 } {55 2 64 21 44 58 63 47 11} 6242 do_test boundary3-2.32.le.10 { 6243 db eval { 6244 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 6245 WHERE t2.a=11 6246 ORDER BY t1.rowid 6247 } 6248 } {55 2 64 21 44 58 63 47 11} 6249 do_test boundary3-2.32.le.11 { 6250 db eval { 6251 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 6252 WHERE t2.a=11 6253 ORDER BY t1.rowid DESC 6254 } 6255 } {11 47 63 58 44 21 64 2 55} 6256 do_test boundary3-2.33.1 { 6257 db eval { 6258 SELECT t1.* FROM t1, t2 WHERE t1.rowid=34359738367 AND t2.a=t1.a 6259 } 6260 } {39 00000007ffffffff} 6261 do_test boundary3-2.33.2 { 6262 db eval { 6263 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='00000007ffffffff' 6264 } 6265 } {34359738367 39} 6266 do_test boundary3-2.33.3 { 6267 db eval { 6268 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=39 6269 } 6270 } {34359738367 00000007ffffffff} 6271 do_test boundary3-2.33.gt.1 { 6272 db eval { 6273 SELECT t2.a FROM t1 JOIN t2 USING(a) 6274 WHERE t1.rowid > 34359738367 ORDER BY t2.a 6275 } 6276 } {3 7 10 13 17 19 22 25 26 27 28 34 35 43 45 46 56 57} 6277 do_test boundary3-2.33.gt.2 { 6278 db eval { 6279 SELECT t2.a FROM t2 NATURAL JOIN t1 6280 WHERE t1.rowid > 34359738367 ORDER BY t1.a DESC 6281 } 6282 } {57 56 46 45 43 35 34 28 27 26 25 22 19 17 13 10 7 3} 6283 do_test boundary3-2.33.gt.3 { 6284 db eval { 6285 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 6286 WHERE t2.a=39 6287 ORDER BY t1.rowid 6288 } 6289 } {22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6290 do_test boundary3-2.33.gt.4 { 6291 db eval { 6292 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 6293 WHERE t2.a=39 6294 ORDER BY t1.rowid DESC 6295 } 6296 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22} 6297 do_test boundary3-2.33.gt.5 { 6298 db eval { 6299 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 6300 WHERE t2.a=39 6301 ORDER BY x 6302 } 6303 } {22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6304 do_test boundary3-2.33.gt.10 { 6305 db eval { 6306 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 6307 WHERE t2.a=39 6308 ORDER BY t1.rowid 6309 } 6310 } {22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6311 do_test boundary3-2.33.gt.11 { 6312 db eval { 6313 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 6314 WHERE t2.a=39 6315 ORDER BY t1.rowid DESC 6316 } 6317 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22} 6318 do_test boundary3-2.33.ge.1 { 6319 db eval { 6320 SELECT t2.a FROM t1 JOIN t2 USING(a) 6321 WHERE t1.rowid >= 34359738367 ORDER BY t2.a 6322 } 6323 } {3 7 10 13 17 19 22 25 26 27 28 34 35 39 43 45 46 56 57} 6324 do_test boundary3-2.33.ge.2 { 6325 db eval { 6326 SELECT t2.a FROM t2 NATURAL JOIN t1 6327 WHERE t1.rowid >= 34359738367 ORDER BY t1.a DESC 6328 } 6329 } {57 56 46 45 43 39 35 34 28 27 26 25 22 19 17 13 10 7 3} 6330 do_test boundary3-2.33.ge.3 { 6331 db eval { 6332 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 6333 WHERE t2.a=39 6334 ORDER BY t1.rowid 6335 } 6336 } {39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6337 do_test boundary3-2.33.ge.4 { 6338 db eval { 6339 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 6340 WHERE t2.a=39 6341 ORDER BY t1.rowid DESC 6342 } 6343 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39} 6344 do_test boundary3-2.33.ge.5 { 6345 db eval { 6346 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 6347 WHERE t2.a=39 6348 ORDER BY x 6349 } 6350 } {39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6351 do_test boundary3-2.33.ge.10 { 6352 db eval { 6353 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 6354 WHERE t2.a=39 6355 ORDER BY t1.rowid 6356 } 6357 } {39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6358 do_test boundary3-2.33.ge.11 { 6359 db eval { 6360 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 6361 WHERE t2.a=39 6362 ORDER BY t1.rowid DESC 6363 } 6364 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39} 6365 do_test boundary3-2.33.lt.1 { 6366 db eval { 6367 SELECT t2.a FROM t1 JOIN t2 USING(a) 6368 WHERE t1.rowid < 34359738367 ORDER BY t2.a 6369 } 6370 } {1 2 4 5 6 8 9 11 12 14 15 16 18 20 21 23 24 29 30 31 32 33 36 37 38 40 41 42 44 47 48 49 50 51 52 53 54 55 58 59 60 61 62 63 64} 6371 do_test boundary3-2.33.lt.2 { 6372 db eval { 6373 SELECT t2.a FROM t2 NATURAL JOIN t1 6374 WHERE t1.rowid < 34359738367 ORDER BY t1.a DESC 6375 } 6376 } {64 63 62 61 60 59 58 55 54 53 52 51 50 49 48 47 44 42 41 40 38 37 36 33 32 31 30 29 24 23 21 20 18 16 15 14 12 11 9 8 6 5 4 2 1} 6377 do_test boundary3-2.33.lt.3 { 6378 db eval { 6379 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 6380 WHERE t2.a=39 6381 ORDER BY t1.rowid 6382 } 6383 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36} 6384 do_test boundary3-2.33.lt.4 { 6385 db eval { 6386 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 6387 WHERE t2.a=39 6388 ORDER BY t1.rowid DESC 6389 } 6390 } {36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 6391 do_test boundary3-2.33.lt.5 { 6392 db eval { 6393 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 6394 WHERE t2.a=39 6395 ORDER BY x 6396 } 6397 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 6398 do_test boundary3-2.33.lt.10 { 6399 db eval { 6400 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 6401 WHERE t2.a=39 6402 ORDER BY t1.rowid 6403 } 6404 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36} 6405 do_test boundary3-2.33.lt.11 { 6406 db eval { 6407 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 6408 WHERE t2.a=39 6409 ORDER BY t1.rowid DESC 6410 } 6411 } {36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 6412 do_test boundary3-2.33.le.1 { 6413 db eval { 6414 SELECT t2.a FROM t1 JOIN t2 USING(a) 6415 WHERE t1.rowid <= 34359738367 ORDER BY t2.a 6416 } 6417 } {1 2 4 5 6 8 9 11 12 14 15 16 18 20 21 23 24 29 30 31 32 33 36 37 38 39 40 41 42 44 47 48 49 50 51 52 53 54 55 58 59 60 61 62 63 64} 6418 do_test boundary3-2.33.le.2 { 6419 db eval { 6420 SELECT t2.a FROM t2 NATURAL JOIN t1 6421 WHERE t1.rowid <= 34359738367 ORDER BY t1.a DESC 6422 } 6423 } {64 63 62 61 60 59 58 55 54 53 52 51 50 49 48 47 44 42 41 40 39 38 37 36 33 32 31 30 29 24 23 21 20 18 16 15 14 12 11 9 8 6 5 4 2 1} 6424 do_test boundary3-2.33.le.3 { 6425 db eval { 6426 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 6427 WHERE t2.a=39 6428 ORDER BY t1.rowid 6429 } 6430 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39} 6431 do_test boundary3-2.33.le.4 { 6432 db eval { 6433 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 6434 WHERE t2.a=39 6435 ORDER BY t1.rowid DESC 6436 } 6437 } {39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 6438 do_test boundary3-2.33.le.5 { 6439 db eval { 6440 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 6441 WHERE t2.a=39 6442 ORDER BY x 6443 } 6444 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 6445 do_test boundary3-2.33.le.10 { 6446 db eval { 6447 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 6448 WHERE t2.a=39 6449 ORDER BY t1.rowid 6450 } 6451 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39} 6452 do_test boundary3-2.33.le.11 { 6453 db eval { 6454 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 6455 WHERE t2.a=39 6456 ORDER BY t1.rowid DESC 6457 } 6458 } {39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 6459 do_test boundary3-2.34.1 { 6460 db eval { 6461 SELECT t1.* FROM t1, t2 WHERE t1.rowid=-549755813889 AND t2.a=t1.a 6462 } 6463 } {58 ffffff7fffffffff} 6464 do_test boundary3-2.34.2 { 6465 db eval { 6466 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='ffffff7fffffffff' 6467 } 6468 } {-549755813889 58} 6469 do_test boundary3-2.34.3 { 6470 db eval { 6471 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=58 6472 } 6473 } {-549755813889 ffffff7fffffffff} 6474 do_test boundary3-2.34.gt.1 { 6475 db eval { 6476 SELECT t2.a FROM t1 JOIN t2 USING(a) 6477 WHERE t1.rowid > -549755813889 ORDER BY t2.a 6478 } 6479 } {1 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 45 46 47 48 49 50 51 52 53 54 56 57 59 60 61 62 63} 6480 do_test boundary3-2.34.gt.2 { 6481 db eval { 6482 SELECT t2.a FROM t2 NATURAL JOIN t1 6483 WHERE t1.rowid > -549755813889 ORDER BY t1.a DESC 6484 } 6485 } {63 62 61 60 59 57 56 54 53 52 51 50 49 48 47 46 45 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 1} 6486 do_test boundary3-2.34.gt.3 { 6487 db eval { 6488 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 6489 WHERE t2.a=58 6490 ORDER BY t1.rowid 6491 } 6492 } {63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6493 do_test boundary3-2.34.gt.4 { 6494 db eval { 6495 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 6496 WHERE t2.a=58 6497 ORDER BY t1.rowid DESC 6498 } 6499 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63} 6500 do_test boundary3-2.34.gt.5 { 6501 db eval { 6502 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 6503 WHERE t2.a=58 6504 ORDER BY x 6505 } 6506 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 63 47 11 1 37 29 32 54 53 52 33 38} 6507 do_test boundary3-2.34.gt.10 { 6508 db eval { 6509 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 6510 WHERE t2.a=58 6511 ORDER BY t1.rowid 6512 } 6513 } {63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6514 do_test boundary3-2.34.gt.11 { 6515 db eval { 6516 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 6517 WHERE t2.a=58 6518 ORDER BY t1.rowid DESC 6519 } 6520 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63} 6521 do_test boundary3-2.34.ge.1 { 6522 db eval { 6523 SELECT t2.a FROM t1 JOIN t2 USING(a) 6524 WHERE t1.rowid >= -549755813889 ORDER BY t2.a 6525 } 6526 } {1 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 45 46 47 48 49 50 51 52 53 54 56 57 58 59 60 61 62 63} 6527 do_test boundary3-2.34.ge.2 { 6528 db eval { 6529 SELECT t2.a FROM t2 NATURAL JOIN t1 6530 WHERE t1.rowid >= -549755813889 ORDER BY t1.a DESC 6531 } 6532 } {63 62 61 60 59 58 57 56 54 53 52 51 50 49 48 47 46 45 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 1} 6533 do_test boundary3-2.34.ge.3 { 6534 db eval { 6535 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 6536 WHERE t2.a=58 6537 ORDER BY t1.rowid 6538 } 6539 } {58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6540 do_test boundary3-2.34.ge.4 { 6541 db eval { 6542 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 6543 WHERE t2.a=58 6544 ORDER BY t1.rowid DESC 6545 } 6546 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58} 6547 do_test boundary3-2.34.ge.5 { 6548 db eval { 6549 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 6550 WHERE t2.a=58 6551 ORDER BY x 6552 } 6553 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 58 63 47 11 1 37 29 32 54 53 52 33 38} 6554 do_test boundary3-2.34.ge.10 { 6555 db eval { 6556 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 6557 WHERE t2.a=58 6558 ORDER BY t1.rowid 6559 } 6560 } {58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6561 do_test boundary3-2.34.ge.11 { 6562 db eval { 6563 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 6564 WHERE t2.a=58 6565 ORDER BY t1.rowid DESC 6566 } 6567 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58} 6568 do_test boundary3-2.34.lt.1 { 6569 db eval { 6570 SELECT t2.a FROM t1 JOIN t2 USING(a) 6571 WHERE t1.rowid < -549755813889 ORDER BY t2.a 6572 } 6573 } {2 21 44 55 64} 6574 do_test boundary3-2.34.lt.2 { 6575 db eval { 6576 SELECT t2.a FROM t2 NATURAL JOIN t1 6577 WHERE t1.rowid < -549755813889 ORDER BY t1.a DESC 6578 } 6579 } {64 55 44 21 2} 6580 do_test boundary3-2.34.lt.3 { 6581 db eval { 6582 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 6583 WHERE t2.a=58 6584 ORDER BY t1.rowid 6585 } 6586 } {55 2 64 21 44} 6587 do_test boundary3-2.34.lt.4 { 6588 db eval { 6589 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 6590 WHERE t2.a=58 6591 ORDER BY t1.rowid DESC 6592 } 6593 } {44 21 64 2 55} 6594 do_test boundary3-2.34.lt.5 { 6595 db eval { 6596 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 6597 WHERE t2.a=58 6598 ORDER BY x 6599 } 6600 } {55 2 64 21 44} 6601 do_test boundary3-2.34.lt.10 { 6602 db eval { 6603 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 6604 WHERE t2.a=58 6605 ORDER BY t1.rowid 6606 } 6607 } {55 2 64 21 44} 6608 do_test boundary3-2.34.lt.11 { 6609 db eval { 6610 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 6611 WHERE t2.a=58 6612 ORDER BY t1.rowid DESC 6613 } 6614 } {44 21 64 2 55} 6615 do_test boundary3-2.34.le.1 { 6616 db eval { 6617 SELECT t2.a FROM t1 JOIN t2 USING(a) 6618 WHERE t1.rowid <= -549755813889 ORDER BY t2.a 6619 } 6620 } {2 21 44 55 58 64} 6621 do_test boundary3-2.34.le.2 { 6622 db eval { 6623 SELECT t2.a FROM t2 NATURAL JOIN t1 6624 WHERE t1.rowid <= -549755813889 ORDER BY t1.a DESC 6625 } 6626 } {64 58 55 44 21 2} 6627 do_test boundary3-2.34.le.3 { 6628 db eval { 6629 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 6630 WHERE t2.a=58 6631 ORDER BY t1.rowid 6632 } 6633 } {55 2 64 21 44 58} 6634 do_test boundary3-2.34.le.4 { 6635 db eval { 6636 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 6637 WHERE t2.a=58 6638 ORDER BY t1.rowid DESC 6639 } 6640 } {58 44 21 64 2 55} 6641 do_test boundary3-2.34.le.5 { 6642 db eval { 6643 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 6644 WHERE t2.a=58 6645 ORDER BY x 6646 } 6647 } {55 2 64 21 44 58} 6648 do_test boundary3-2.34.le.10 { 6649 db eval { 6650 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 6651 WHERE t2.a=58 6652 ORDER BY t1.rowid 6653 } 6654 } {55 2 64 21 44 58} 6655 do_test boundary3-2.34.le.11 { 6656 db eval { 6657 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 6658 WHERE t2.a=58 6659 ORDER BY t1.rowid DESC 6660 } 6661 } {58 44 21 64 2 55} 6662 do_test boundary3-2.35.1 { 6663 db eval { 6664 SELECT t1.* FROM t1, t2 WHERE t1.rowid=-32768 AND t2.a=t1.a 6665 } 6666 } {32 ffffffffffff8000} 6667 do_test boundary3-2.35.2 { 6668 db eval { 6669 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='ffffffffffff8000' 6670 } 6671 } {-32768 32} 6672 do_test boundary3-2.35.3 { 6673 db eval { 6674 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=32 6675 } 6676 } {-32768 ffffffffffff8000} 6677 do_test boundary3-2.35.gt.1 { 6678 db eval { 6679 SELECT t2.a FROM t1 JOIN t2 USING(a) 6680 WHERE t1.rowid > -32768 ORDER BY t2.a 6681 } 6682 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 33 34 35 36 38 39 40 41 42 43 45 46 48 49 50 51 52 53 54 56 57 59 60 61 62} 6683 do_test boundary3-2.35.gt.2 { 6684 db eval { 6685 SELECT t2.a FROM t2 NATURAL JOIN t1 6686 WHERE t1.rowid > -32768 ORDER BY t1.a DESC 6687 } 6688 } {62 61 60 59 57 56 54 53 52 51 50 49 48 46 45 43 42 41 40 39 38 36 35 34 33 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 6689 do_test boundary3-2.35.gt.3 { 6690 db eval { 6691 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 6692 WHERE t2.a=32 6693 ORDER BY t1.rowid 6694 } 6695 } {54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6696 do_test boundary3-2.35.gt.4 { 6697 db eval { 6698 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 6699 WHERE t2.a=32 6700 ORDER BY t1.rowid DESC 6701 } 6702 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54} 6703 do_test boundary3-2.35.gt.5 { 6704 db eval { 6705 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 6706 WHERE t2.a=32 6707 ORDER BY x 6708 } 6709 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 54 53 52 33 38} 6710 do_test boundary3-2.35.gt.10 { 6711 db eval { 6712 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 6713 WHERE t2.a=32 6714 ORDER BY t1.rowid 6715 } 6716 } {54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6717 do_test boundary3-2.35.gt.11 { 6718 db eval { 6719 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 6720 WHERE t2.a=32 6721 ORDER BY t1.rowid DESC 6722 } 6723 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54} 6724 do_test boundary3-2.35.ge.1 { 6725 db eval { 6726 SELECT t2.a FROM t1 JOIN t2 USING(a) 6727 WHERE t1.rowid >= -32768 ORDER BY t2.a 6728 } 6729 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 32 33 34 35 36 38 39 40 41 42 43 45 46 48 49 50 51 52 53 54 56 57 59 60 61 62} 6730 do_test boundary3-2.35.ge.2 { 6731 db eval { 6732 SELECT t2.a FROM t2 NATURAL JOIN t1 6733 WHERE t1.rowid >= -32768 ORDER BY t1.a DESC 6734 } 6735 } {62 61 60 59 57 56 54 53 52 51 50 49 48 46 45 43 42 41 40 39 38 36 35 34 33 32 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 6736 do_test boundary3-2.35.ge.3 { 6737 db eval { 6738 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 6739 WHERE t2.a=32 6740 ORDER BY t1.rowid 6741 } 6742 } {32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6743 do_test boundary3-2.35.ge.4 { 6744 db eval { 6745 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 6746 WHERE t2.a=32 6747 ORDER BY t1.rowid DESC 6748 } 6749 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32} 6750 do_test boundary3-2.35.ge.5 { 6751 db eval { 6752 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 6753 WHERE t2.a=32 6754 ORDER BY x 6755 } 6756 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 32 54 53 52 33 38} 6757 do_test boundary3-2.35.ge.10 { 6758 db eval { 6759 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 6760 WHERE t2.a=32 6761 ORDER BY t1.rowid 6762 } 6763 } {32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6764 do_test boundary3-2.35.ge.11 { 6765 db eval { 6766 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 6767 WHERE t2.a=32 6768 ORDER BY t1.rowid DESC 6769 } 6770 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32} 6771 do_test boundary3-2.35.lt.1 { 6772 db eval { 6773 SELECT t2.a FROM t1 JOIN t2 USING(a) 6774 WHERE t1.rowid < -32768 ORDER BY t2.a 6775 } 6776 } {1 2 11 21 29 37 44 47 55 58 63 64} 6777 do_test boundary3-2.35.lt.2 { 6778 db eval { 6779 SELECT t2.a FROM t2 NATURAL JOIN t1 6780 WHERE t1.rowid < -32768 ORDER BY t1.a DESC 6781 } 6782 } {64 63 58 55 47 44 37 29 21 11 2 1} 6783 do_test boundary3-2.35.lt.3 { 6784 db eval { 6785 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 6786 WHERE t2.a=32 6787 ORDER BY t1.rowid 6788 } 6789 } {55 2 64 21 44 58 63 47 11 1 37 29} 6790 do_test boundary3-2.35.lt.4 { 6791 db eval { 6792 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 6793 WHERE t2.a=32 6794 ORDER BY t1.rowid DESC 6795 } 6796 } {29 37 1 11 47 63 58 44 21 64 2 55} 6797 do_test boundary3-2.35.lt.5 { 6798 db eval { 6799 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 6800 WHERE t2.a=32 6801 ORDER BY x 6802 } 6803 } {55 2 64 21 44 58 63 47 11 1 37 29} 6804 do_test boundary3-2.35.lt.10 { 6805 db eval { 6806 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 6807 WHERE t2.a=32 6808 ORDER BY t1.rowid 6809 } 6810 } {55 2 64 21 44 58 63 47 11 1 37 29} 6811 do_test boundary3-2.35.lt.11 { 6812 db eval { 6813 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 6814 WHERE t2.a=32 6815 ORDER BY t1.rowid DESC 6816 } 6817 } {29 37 1 11 47 63 58 44 21 64 2 55} 6818 do_test boundary3-2.35.le.1 { 6819 db eval { 6820 SELECT t2.a FROM t1 JOIN t2 USING(a) 6821 WHERE t1.rowid <= -32768 ORDER BY t2.a 6822 } 6823 } {1 2 11 21 29 32 37 44 47 55 58 63 64} 6824 do_test boundary3-2.35.le.2 { 6825 db eval { 6826 SELECT t2.a FROM t2 NATURAL JOIN t1 6827 WHERE t1.rowid <= -32768 ORDER BY t1.a DESC 6828 } 6829 } {64 63 58 55 47 44 37 32 29 21 11 2 1} 6830 do_test boundary3-2.35.le.3 { 6831 db eval { 6832 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 6833 WHERE t2.a=32 6834 ORDER BY t1.rowid 6835 } 6836 } {55 2 64 21 44 58 63 47 11 1 37 29 32} 6837 do_test boundary3-2.35.le.4 { 6838 db eval { 6839 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 6840 WHERE t2.a=32 6841 ORDER BY t1.rowid DESC 6842 } 6843 } {32 29 37 1 11 47 63 58 44 21 64 2 55} 6844 do_test boundary3-2.35.le.5 { 6845 db eval { 6846 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 6847 WHERE t2.a=32 6848 ORDER BY x 6849 } 6850 } {55 2 64 21 44 58 63 47 11 1 37 29 32} 6851 do_test boundary3-2.35.le.10 { 6852 db eval { 6853 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 6854 WHERE t2.a=32 6855 ORDER BY t1.rowid 6856 } 6857 } {55 2 64 21 44 58 63 47 11 1 37 29 32} 6858 do_test boundary3-2.35.le.11 { 6859 db eval { 6860 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 6861 WHERE t2.a=32 6862 ORDER BY t1.rowid DESC 6863 } 6864 } {32 29 37 1 11 47 63 58 44 21 64 2 55} 6865 do_test boundary3-2.36.1 { 6866 db eval { 6867 SELECT t1.* FROM t1, t2 WHERE t1.rowid=2147483647 AND t2.a=t1.a 6868 } 6869 } {20 000000007fffffff} 6870 do_test boundary3-2.36.2 { 6871 db eval { 6872 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='000000007fffffff' 6873 } 6874 } {2147483647 20} 6875 do_test boundary3-2.36.3 { 6876 db eval { 6877 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=20 6878 } 6879 } {2147483647 000000007fffffff} 6880 do_test boundary3-2.36.gt.1 { 6881 db eval { 6882 SELECT t2.a FROM t1 JOIN t2 USING(a) 6883 WHERE t1.rowid > 2147483647 ORDER BY t2.a 6884 } 6885 } {3 7 10 13 14 17 19 22 25 26 27 28 34 35 36 39 43 45 46 51 56 57} 6886 do_test boundary3-2.36.gt.2 { 6887 db eval { 6888 SELECT t2.a FROM t2 NATURAL JOIN t1 6889 WHERE t1.rowid > 2147483647 ORDER BY t1.a DESC 6890 } 6891 } {57 56 51 46 45 43 39 36 35 34 28 27 26 25 22 19 17 14 13 10 7 3} 6892 do_test boundary3-2.36.gt.3 { 6893 db eval { 6894 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 6895 WHERE t2.a=20 6896 ORDER BY t1.rowid 6897 } 6898 } {51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6899 do_test boundary3-2.36.gt.4 { 6900 db eval { 6901 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 6902 WHERE t2.a=20 6903 ORDER BY t1.rowid DESC 6904 } 6905 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51} 6906 do_test boundary3-2.36.gt.5 { 6907 db eval { 6908 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 6909 WHERE t2.a=20 6910 ORDER BY x 6911 } 6912 } {51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6913 do_test boundary3-2.36.gt.10 { 6914 db eval { 6915 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 6916 WHERE t2.a=20 6917 ORDER BY t1.rowid 6918 } 6919 } {51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6920 do_test boundary3-2.36.gt.11 { 6921 db eval { 6922 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 6923 WHERE t2.a=20 6924 ORDER BY t1.rowid DESC 6925 } 6926 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51} 6927 do_test boundary3-2.36.ge.1 { 6928 db eval { 6929 SELECT t2.a FROM t1 JOIN t2 USING(a) 6930 WHERE t1.rowid >= 2147483647 ORDER BY t2.a 6931 } 6932 } {3 7 10 13 14 17 19 20 22 25 26 27 28 34 35 36 39 43 45 46 51 56 57} 6933 do_test boundary3-2.36.ge.2 { 6934 db eval { 6935 SELECT t2.a FROM t2 NATURAL JOIN t1 6936 WHERE t1.rowid >= 2147483647 ORDER BY t1.a DESC 6937 } 6938 } {57 56 51 46 45 43 39 36 35 34 28 27 26 25 22 20 19 17 14 13 10 7 3} 6939 do_test boundary3-2.36.ge.3 { 6940 db eval { 6941 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 6942 WHERE t2.a=20 6943 ORDER BY t1.rowid 6944 } 6945 } {20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6946 do_test boundary3-2.36.ge.4 { 6947 db eval { 6948 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 6949 WHERE t2.a=20 6950 ORDER BY t1.rowid DESC 6951 } 6952 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20} 6953 do_test boundary3-2.36.ge.5 { 6954 db eval { 6955 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 6956 WHERE t2.a=20 6957 ORDER BY x 6958 } 6959 } {20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6960 do_test boundary3-2.36.ge.10 { 6961 db eval { 6962 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 6963 WHERE t2.a=20 6964 ORDER BY t1.rowid 6965 } 6966 } {20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 6967 do_test boundary3-2.36.ge.11 { 6968 db eval { 6969 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 6970 WHERE t2.a=20 6971 ORDER BY t1.rowid DESC 6972 } 6973 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20} 6974 do_test boundary3-2.36.lt.1 { 6975 db eval { 6976 SELECT t2.a FROM t1 JOIN t2 USING(a) 6977 WHERE t1.rowid < 2147483647 ORDER BY t2.a 6978 } 6979 } {1 2 4 5 6 8 9 11 12 15 16 18 21 23 24 29 30 31 32 33 37 38 40 41 42 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 6980 do_test boundary3-2.36.lt.2 { 6981 db eval { 6982 SELECT t2.a FROM t2 NATURAL JOIN t1 6983 WHERE t1.rowid < 2147483647 ORDER BY t1.a DESC 6984 } 6985 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 42 41 40 38 37 33 32 31 30 29 24 23 21 18 16 15 12 11 9 8 6 5 4 2 1} 6986 do_test boundary3-2.36.lt.3 { 6987 db eval { 6988 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 6989 WHERE t2.a=20 6990 ORDER BY t1.rowid 6991 } 6992 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40} 6993 do_test boundary3-2.36.lt.4 { 6994 db eval { 6995 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 6996 WHERE t2.a=20 6997 ORDER BY t1.rowid DESC 6998 } 6999 } {40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 7000 do_test boundary3-2.36.lt.5 { 7001 db eval { 7002 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 7003 WHERE t2.a=20 7004 ORDER BY x 7005 } 7006 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 7007 do_test boundary3-2.36.lt.10 { 7008 db eval { 7009 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 7010 WHERE t2.a=20 7011 ORDER BY t1.rowid 7012 } 7013 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40} 7014 do_test boundary3-2.36.lt.11 { 7015 db eval { 7016 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 7017 WHERE t2.a=20 7018 ORDER BY t1.rowid DESC 7019 } 7020 } {40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 7021 do_test boundary3-2.36.le.1 { 7022 db eval { 7023 SELECT t2.a FROM t1 JOIN t2 USING(a) 7024 WHERE t1.rowid <= 2147483647 ORDER BY t2.a 7025 } 7026 } {1 2 4 5 6 8 9 11 12 15 16 18 20 21 23 24 29 30 31 32 33 37 38 40 41 42 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 7027 do_test boundary3-2.36.le.2 { 7028 db eval { 7029 SELECT t2.a FROM t2 NATURAL JOIN t1 7030 WHERE t1.rowid <= 2147483647 ORDER BY t1.a DESC 7031 } 7032 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 42 41 40 38 37 33 32 31 30 29 24 23 21 20 18 16 15 12 11 9 8 6 5 4 2 1} 7033 do_test boundary3-2.36.le.3 { 7034 db eval { 7035 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 7036 WHERE t2.a=20 7037 ORDER BY t1.rowid 7038 } 7039 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20} 7040 do_test boundary3-2.36.le.4 { 7041 db eval { 7042 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 7043 WHERE t2.a=20 7044 ORDER BY t1.rowid DESC 7045 } 7046 } {20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 7047 do_test boundary3-2.36.le.5 { 7048 db eval { 7049 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 7050 WHERE t2.a=20 7051 ORDER BY x 7052 } 7053 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 7054 do_test boundary3-2.36.le.10 { 7055 db eval { 7056 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 7057 WHERE t2.a=20 7058 ORDER BY t1.rowid 7059 } 7060 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20} 7061 do_test boundary3-2.36.le.11 { 7062 db eval { 7063 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 7064 WHERE t2.a=20 7065 ORDER BY t1.rowid DESC 7066 } 7067 } {20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 7068 do_test boundary3-2.37.1 { 7069 db eval { 7070 SELECT t1.* FROM t1, t2 WHERE t1.rowid=-129 AND t2.a=t1.a 7071 } 7072 } {54 ffffffffffffff7f} 7073 do_test boundary3-2.37.2 { 7074 db eval { 7075 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='ffffffffffffff7f' 7076 } 7077 } {-129 54} 7078 do_test boundary3-2.37.3 { 7079 db eval { 7080 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=54 7081 } 7082 } {-129 ffffffffffffff7f} 7083 do_test boundary3-2.37.gt.1 { 7084 db eval { 7085 SELECT t2.a FROM t1 JOIN t2 USING(a) 7086 WHERE t1.rowid > -129 ORDER BY t2.a 7087 } 7088 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 33 34 35 36 38 39 40 41 42 43 45 46 48 49 50 51 52 53 56 57 59 60 61 62} 7089 do_test boundary3-2.37.gt.2 { 7090 db eval { 7091 SELECT t2.a FROM t2 NATURAL JOIN t1 7092 WHERE t1.rowid > -129 ORDER BY t1.a DESC 7093 } 7094 } {62 61 60 59 57 56 53 52 51 50 49 48 46 45 43 42 41 40 39 38 36 35 34 33 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 7095 do_test boundary3-2.37.gt.3 { 7096 db eval { 7097 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 7098 WHERE t2.a=54 7099 ORDER BY t1.rowid 7100 } 7101 } {53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7102 do_test boundary3-2.37.gt.4 { 7103 db eval { 7104 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 7105 WHERE t2.a=54 7106 ORDER BY t1.rowid DESC 7107 } 7108 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53} 7109 do_test boundary3-2.37.gt.5 { 7110 db eval { 7111 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 7112 WHERE t2.a=54 7113 ORDER BY x 7114 } 7115 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 53 52 33 38} 7116 do_test boundary3-2.37.gt.10 { 7117 db eval { 7118 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 7119 WHERE t2.a=54 7120 ORDER BY t1.rowid 7121 } 7122 } {53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7123 do_test boundary3-2.37.gt.11 { 7124 db eval { 7125 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 7126 WHERE t2.a=54 7127 ORDER BY t1.rowid DESC 7128 } 7129 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53} 7130 do_test boundary3-2.37.ge.1 { 7131 db eval { 7132 SELECT t2.a FROM t1 JOIN t2 USING(a) 7133 WHERE t1.rowid >= -129 ORDER BY t2.a 7134 } 7135 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 33 34 35 36 38 39 40 41 42 43 45 46 48 49 50 51 52 53 54 56 57 59 60 61 62} 7136 do_test boundary3-2.37.ge.2 { 7137 db eval { 7138 SELECT t2.a FROM t2 NATURAL JOIN t1 7139 WHERE t1.rowid >= -129 ORDER BY t1.a DESC 7140 } 7141 } {62 61 60 59 57 56 54 53 52 51 50 49 48 46 45 43 42 41 40 39 38 36 35 34 33 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 7142 do_test boundary3-2.37.ge.3 { 7143 db eval { 7144 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 7145 WHERE t2.a=54 7146 ORDER BY t1.rowid 7147 } 7148 } {54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7149 do_test boundary3-2.37.ge.4 { 7150 db eval { 7151 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 7152 WHERE t2.a=54 7153 ORDER BY t1.rowid DESC 7154 } 7155 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54} 7156 do_test boundary3-2.37.ge.5 { 7157 db eval { 7158 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 7159 WHERE t2.a=54 7160 ORDER BY x 7161 } 7162 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 54 53 52 33 38} 7163 do_test boundary3-2.37.ge.10 { 7164 db eval { 7165 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 7166 WHERE t2.a=54 7167 ORDER BY t1.rowid 7168 } 7169 } {54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7170 do_test boundary3-2.37.ge.11 { 7171 db eval { 7172 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 7173 WHERE t2.a=54 7174 ORDER BY t1.rowid DESC 7175 } 7176 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54} 7177 do_test boundary3-2.37.lt.1 { 7178 db eval { 7179 SELECT t2.a FROM t1 JOIN t2 USING(a) 7180 WHERE t1.rowid < -129 ORDER BY t2.a 7181 } 7182 } {1 2 11 21 29 32 37 44 47 55 58 63 64} 7183 do_test boundary3-2.37.lt.2 { 7184 db eval { 7185 SELECT t2.a FROM t2 NATURAL JOIN t1 7186 WHERE t1.rowid < -129 ORDER BY t1.a DESC 7187 } 7188 } {64 63 58 55 47 44 37 32 29 21 11 2 1} 7189 do_test boundary3-2.37.lt.3 { 7190 db eval { 7191 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 7192 WHERE t2.a=54 7193 ORDER BY t1.rowid 7194 } 7195 } {55 2 64 21 44 58 63 47 11 1 37 29 32} 7196 do_test boundary3-2.37.lt.4 { 7197 db eval { 7198 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 7199 WHERE t2.a=54 7200 ORDER BY t1.rowid DESC 7201 } 7202 } {32 29 37 1 11 47 63 58 44 21 64 2 55} 7203 do_test boundary3-2.37.lt.5 { 7204 db eval { 7205 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 7206 WHERE t2.a=54 7207 ORDER BY x 7208 } 7209 } {55 2 64 21 44 58 63 47 11 1 37 29 32} 7210 do_test boundary3-2.37.lt.10 { 7211 db eval { 7212 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 7213 WHERE t2.a=54 7214 ORDER BY t1.rowid 7215 } 7216 } {55 2 64 21 44 58 63 47 11 1 37 29 32} 7217 do_test boundary3-2.37.lt.11 { 7218 db eval { 7219 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 7220 WHERE t2.a=54 7221 ORDER BY t1.rowid DESC 7222 } 7223 } {32 29 37 1 11 47 63 58 44 21 64 2 55} 7224 do_test boundary3-2.37.le.1 { 7225 db eval { 7226 SELECT t2.a FROM t1 JOIN t2 USING(a) 7227 WHERE t1.rowid <= -129 ORDER BY t2.a 7228 } 7229 } {1 2 11 21 29 32 37 44 47 54 55 58 63 64} 7230 do_test boundary3-2.37.le.2 { 7231 db eval { 7232 SELECT t2.a FROM t2 NATURAL JOIN t1 7233 WHERE t1.rowid <= -129 ORDER BY t1.a DESC 7234 } 7235 } {64 63 58 55 54 47 44 37 32 29 21 11 2 1} 7236 do_test boundary3-2.37.le.3 { 7237 db eval { 7238 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 7239 WHERE t2.a=54 7240 ORDER BY t1.rowid 7241 } 7242 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54} 7243 do_test boundary3-2.37.le.4 { 7244 db eval { 7245 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 7246 WHERE t2.a=54 7247 ORDER BY t1.rowid DESC 7248 } 7249 } {54 32 29 37 1 11 47 63 58 44 21 64 2 55} 7250 do_test boundary3-2.37.le.5 { 7251 db eval { 7252 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 7253 WHERE t2.a=54 7254 ORDER BY x 7255 } 7256 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54} 7257 do_test boundary3-2.37.le.10 { 7258 db eval { 7259 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 7260 WHERE t2.a=54 7261 ORDER BY t1.rowid 7262 } 7263 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54} 7264 do_test boundary3-2.37.le.11 { 7265 db eval { 7266 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 7267 WHERE t2.a=54 7268 ORDER BY t1.rowid DESC 7269 } 7270 } {54 32 29 37 1 11 47 63 58 44 21 64 2 55} 7271 do_test boundary3-2.38.1 { 7272 db eval { 7273 SELECT t1.* FROM t1, t2 WHERE t1.rowid=-128 AND t2.a=t1.a 7274 } 7275 } {53 ffffffffffffff80} 7276 do_test boundary3-2.38.2 { 7277 db eval { 7278 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='ffffffffffffff80' 7279 } 7280 } {-128 53} 7281 do_test boundary3-2.38.3 { 7282 db eval { 7283 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=53 7284 } 7285 } {-128 ffffffffffffff80} 7286 do_test boundary3-2.38.gt.1 { 7287 db eval { 7288 SELECT t2.a FROM t1 JOIN t2 USING(a) 7289 WHERE t1.rowid > -128 ORDER BY t2.a 7290 } 7291 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 33 34 35 36 38 39 40 41 42 43 45 46 48 49 50 51 52 56 57 59 60 61 62} 7292 do_test boundary3-2.38.gt.2 { 7293 db eval { 7294 SELECT t2.a FROM t2 NATURAL JOIN t1 7295 WHERE t1.rowid > -128 ORDER BY t1.a DESC 7296 } 7297 } {62 61 60 59 57 56 52 51 50 49 48 46 45 43 42 41 40 39 38 36 35 34 33 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 7298 do_test boundary3-2.38.gt.3 { 7299 db eval { 7300 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 7301 WHERE t2.a=53 7302 ORDER BY t1.rowid 7303 } 7304 } {52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7305 do_test boundary3-2.38.gt.4 { 7306 db eval { 7307 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 7308 WHERE t2.a=53 7309 ORDER BY t1.rowid DESC 7310 } 7311 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52} 7312 do_test boundary3-2.38.gt.5 { 7313 db eval { 7314 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 7315 WHERE t2.a=53 7316 ORDER BY x 7317 } 7318 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 52 33 38} 7319 do_test boundary3-2.38.gt.10 { 7320 db eval { 7321 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 7322 WHERE t2.a=53 7323 ORDER BY t1.rowid 7324 } 7325 } {52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7326 do_test boundary3-2.38.gt.11 { 7327 db eval { 7328 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 7329 WHERE t2.a=53 7330 ORDER BY t1.rowid DESC 7331 } 7332 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52} 7333 do_test boundary3-2.38.ge.1 { 7334 db eval { 7335 SELECT t2.a FROM t1 JOIN t2 USING(a) 7336 WHERE t1.rowid >= -128 ORDER BY t2.a 7337 } 7338 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 33 34 35 36 38 39 40 41 42 43 45 46 48 49 50 51 52 53 56 57 59 60 61 62} 7339 do_test boundary3-2.38.ge.2 { 7340 db eval { 7341 SELECT t2.a FROM t2 NATURAL JOIN t1 7342 WHERE t1.rowid >= -128 ORDER BY t1.a DESC 7343 } 7344 } {62 61 60 59 57 56 53 52 51 50 49 48 46 45 43 42 41 40 39 38 36 35 34 33 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 7345 do_test boundary3-2.38.ge.3 { 7346 db eval { 7347 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 7348 WHERE t2.a=53 7349 ORDER BY t1.rowid 7350 } 7351 } {53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7352 do_test boundary3-2.38.ge.4 { 7353 db eval { 7354 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 7355 WHERE t2.a=53 7356 ORDER BY t1.rowid DESC 7357 } 7358 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53} 7359 do_test boundary3-2.38.ge.5 { 7360 db eval { 7361 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 7362 WHERE t2.a=53 7363 ORDER BY x 7364 } 7365 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 53 52 33 38} 7366 do_test boundary3-2.38.ge.10 { 7367 db eval { 7368 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 7369 WHERE t2.a=53 7370 ORDER BY t1.rowid 7371 } 7372 } {53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7373 do_test boundary3-2.38.ge.11 { 7374 db eval { 7375 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 7376 WHERE t2.a=53 7377 ORDER BY t1.rowid DESC 7378 } 7379 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53} 7380 do_test boundary3-2.38.lt.1 { 7381 db eval { 7382 SELECT t2.a FROM t1 JOIN t2 USING(a) 7383 WHERE t1.rowid < -128 ORDER BY t2.a 7384 } 7385 } {1 2 11 21 29 32 37 44 47 54 55 58 63 64} 7386 do_test boundary3-2.38.lt.2 { 7387 db eval { 7388 SELECT t2.a FROM t2 NATURAL JOIN t1 7389 WHERE t1.rowid < -128 ORDER BY t1.a DESC 7390 } 7391 } {64 63 58 55 54 47 44 37 32 29 21 11 2 1} 7392 do_test boundary3-2.38.lt.3 { 7393 db eval { 7394 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 7395 WHERE t2.a=53 7396 ORDER BY t1.rowid 7397 } 7398 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54} 7399 do_test boundary3-2.38.lt.4 { 7400 db eval { 7401 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 7402 WHERE t2.a=53 7403 ORDER BY t1.rowid DESC 7404 } 7405 } {54 32 29 37 1 11 47 63 58 44 21 64 2 55} 7406 do_test boundary3-2.38.lt.5 { 7407 db eval { 7408 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 7409 WHERE t2.a=53 7410 ORDER BY x 7411 } 7412 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54} 7413 do_test boundary3-2.38.lt.10 { 7414 db eval { 7415 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 7416 WHERE t2.a=53 7417 ORDER BY t1.rowid 7418 } 7419 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54} 7420 do_test boundary3-2.38.lt.11 { 7421 db eval { 7422 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 7423 WHERE t2.a=53 7424 ORDER BY t1.rowid DESC 7425 } 7426 } {54 32 29 37 1 11 47 63 58 44 21 64 2 55} 7427 do_test boundary3-2.38.le.1 { 7428 db eval { 7429 SELECT t2.a FROM t1 JOIN t2 USING(a) 7430 WHERE t1.rowid <= -128 ORDER BY t2.a 7431 } 7432 } {1 2 11 21 29 32 37 44 47 53 54 55 58 63 64} 7433 do_test boundary3-2.38.le.2 { 7434 db eval { 7435 SELECT t2.a FROM t2 NATURAL JOIN t1 7436 WHERE t1.rowid <= -128 ORDER BY t1.a DESC 7437 } 7438 } {64 63 58 55 54 53 47 44 37 32 29 21 11 2 1} 7439 do_test boundary3-2.38.le.3 { 7440 db eval { 7441 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 7442 WHERE t2.a=53 7443 ORDER BY t1.rowid 7444 } 7445 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53} 7446 do_test boundary3-2.38.le.4 { 7447 db eval { 7448 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 7449 WHERE t2.a=53 7450 ORDER BY t1.rowid DESC 7451 } 7452 } {53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 7453 do_test boundary3-2.38.le.5 { 7454 db eval { 7455 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 7456 WHERE t2.a=53 7457 ORDER BY x 7458 } 7459 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53} 7460 do_test boundary3-2.38.le.10 { 7461 db eval { 7462 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 7463 WHERE t2.a=53 7464 ORDER BY t1.rowid 7465 } 7466 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53} 7467 do_test boundary3-2.38.le.11 { 7468 db eval { 7469 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 7470 WHERE t2.a=53 7471 ORDER BY t1.rowid DESC 7472 } 7473 } {53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 7474 do_test boundary3-2.39.1 { 7475 db eval { 7476 SELECT t1.* FROM t1, t2 WHERE t1.rowid=72057594037927936 AND t2.a=t1.a 7477 } 7478 } {28 0100000000000000} 7479 do_test boundary3-2.39.2 { 7480 db eval { 7481 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0100000000000000' 7482 } 7483 } {72057594037927936 28} 7484 do_test boundary3-2.39.3 { 7485 db eval { 7486 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=28 7487 } 7488 } {72057594037927936 0100000000000000} 7489 do_test boundary3-2.39.gt.1 { 7490 db eval { 7491 SELECT t2.a FROM t1 JOIN t2 USING(a) 7492 WHERE t1.rowid > 72057594037927936 ORDER BY t2.a 7493 } 7494 } {3} 7495 do_test boundary3-2.39.gt.2 { 7496 db eval { 7497 SELECT t2.a FROM t2 NATURAL JOIN t1 7498 WHERE t1.rowid > 72057594037927936 ORDER BY t1.a DESC 7499 } 7500 } {3} 7501 do_test boundary3-2.39.gt.3 { 7502 db eval { 7503 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 7504 WHERE t2.a=28 7505 ORDER BY t1.rowid 7506 } 7507 } {3} 7508 do_test boundary3-2.39.gt.4 { 7509 db eval { 7510 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 7511 WHERE t2.a=28 7512 ORDER BY t1.rowid DESC 7513 } 7514 } {3} 7515 do_test boundary3-2.39.gt.5 { 7516 db eval { 7517 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 7518 WHERE t2.a=28 7519 ORDER BY x 7520 } 7521 } {3} 7522 do_test boundary3-2.39.ge.1 { 7523 db eval { 7524 SELECT t2.a FROM t1 JOIN t2 USING(a) 7525 WHERE t1.rowid >= 72057594037927936 ORDER BY t2.a 7526 } 7527 } {3 28} 7528 do_test boundary3-2.39.ge.2 { 7529 db eval { 7530 SELECT t2.a FROM t2 NATURAL JOIN t1 7531 WHERE t1.rowid >= 72057594037927936 ORDER BY t1.a DESC 7532 } 7533 } {28 3} 7534 do_test boundary3-2.39.ge.3 { 7535 db eval { 7536 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 7537 WHERE t2.a=28 7538 ORDER BY t1.rowid 7539 } 7540 } {28 3} 7541 do_test boundary3-2.39.ge.4 { 7542 db eval { 7543 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 7544 WHERE t2.a=28 7545 ORDER BY t1.rowid DESC 7546 } 7547 } {3 28} 7548 do_test boundary3-2.39.ge.5 { 7549 db eval { 7550 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 7551 WHERE t2.a=28 7552 ORDER BY x 7553 } 7554 } {28 3} 7555 do_test boundary3-2.39.lt.1 { 7556 db eval { 7557 SELECT t2.a FROM t1 JOIN t2 USING(a) 7558 WHERE t1.rowid < 72057594037927936 ORDER BY t2.a 7559 } 7560 } {1 2 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 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} 7561 do_test boundary3-2.39.lt.2 { 7562 db eval { 7563 SELECT t2.a FROM t2 NATURAL JOIN t1 7564 WHERE t1.rowid < 72057594037927936 ORDER BY t1.a DESC 7565 } 7566 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 2 1} 7567 do_test boundary3-2.39.lt.3 { 7568 db eval { 7569 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 7570 WHERE t2.a=28 7571 ORDER BY t1.rowid 7572 } 7573 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17} 7574 do_test boundary3-2.39.lt.4 { 7575 db eval { 7576 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 7577 WHERE t2.a=28 7578 ORDER BY t1.rowid DESC 7579 } 7580 } {17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 7581 do_test boundary3-2.39.lt.5 { 7582 db eval { 7583 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 7584 WHERE t2.a=28 7585 ORDER BY x 7586 } 7587 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 7588 do_test boundary3-2.39.le.1 { 7589 db eval { 7590 SELECT t2.a FROM t1 JOIN t2 USING(a) 7591 WHERE t1.rowid <= 72057594037927936 ORDER BY t2.a 7592 } 7593 } {1 2 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} 7594 do_test boundary3-2.39.le.2 { 7595 db eval { 7596 SELECT t2.a FROM t2 NATURAL JOIN t1 7597 WHERE t1.rowid <= 72057594037927936 ORDER BY t1.a DESC 7598 } 7599 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 2 1} 7600 do_test boundary3-2.39.le.3 { 7601 db eval { 7602 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 7603 WHERE t2.a=28 7604 ORDER BY t1.rowid 7605 } 7606 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28} 7607 do_test boundary3-2.39.le.4 { 7608 db eval { 7609 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 7610 WHERE t2.a=28 7611 ORDER BY t1.rowid DESC 7612 } 7613 } {28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 7614 do_test boundary3-2.39.le.5 { 7615 db eval { 7616 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 7617 WHERE t2.a=28 7618 ORDER BY x 7619 } 7620 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 7621 do_test boundary3-2.40.1 { 7622 db eval { 7623 SELECT t1.* FROM t1, t2 WHERE t1.rowid=2147483648 AND t2.a=t1.a 7624 } 7625 } {51 0000000080000000} 7626 do_test boundary3-2.40.2 { 7627 db eval { 7628 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000080000000' 7629 } 7630 } {2147483648 51} 7631 do_test boundary3-2.40.3 { 7632 db eval { 7633 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=51 7634 } 7635 } {2147483648 0000000080000000} 7636 do_test boundary3-2.40.gt.1 { 7637 db eval { 7638 SELECT t2.a FROM t1 JOIN t2 USING(a) 7639 WHERE t1.rowid > 2147483648 ORDER BY t2.a 7640 } 7641 } {3 7 10 13 14 17 19 22 25 26 27 28 34 35 36 39 43 45 46 56 57} 7642 do_test boundary3-2.40.gt.2 { 7643 db eval { 7644 SELECT t2.a FROM t2 NATURAL JOIN t1 7645 WHERE t1.rowid > 2147483648 ORDER BY t1.a DESC 7646 } 7647 } {57 56 46 45 43 39 36 35 34 28 27 26 25 22 19 17 14 13 10 7 3} 7648 do_test boundary3-2.40.gt.3 { 7649 db eval { 7650 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 7651 WHERE t2.a=51 7652 ORDER BY t1.rowid 7653 } 7654 } {14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7655 do_test boundary3-2.40.gt.4 { 7656 db eval { 7657 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 7658 WHERE t2.a=51 7659 ORDER BY t1.rowid DESC 7660 } 7661 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14} 7662 do_test boundary3-2.40.gt.5 { 7663 db eval { 7664 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 7665 WHERE t2.a=51 7666 ORDER BY x 7667 } 7668 } {14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7669 do_test boundary3-2.40.gt.10 { 7670 db eval { 7671 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 7672 WHERE t2.a=51 7673 ORDER BY t1.rowid 7674 } 7675 } {14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7676 do_test boundary3-2.40.gt.11 { 7677 db eval { 7678 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 7679 WHERE t2.a=51 7680 ORDER BY t1.rowid DESC 7681 } 7682 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14} 7683 do_test boundary3-2.40.ge.1 { 7684 db eval { 7685 SELECT t2.a FROM t1 JOIN t2 USING(a) 7686 WHERE t1.rowid >= 2147483648 ORDER BY t2.a 7687 } 7688 } {3 7 10 13 14 17 19 22 25 26 27 28 34 35 36 39 43 45 46 51 56 57} 7689 do_test boundary3-2.40.ge.2 { 7690 db eval { 7691 SELECT t2.a FROM t2 NATURAL JOIN t1 7692 WHERE t1.rowid >= 2147483648 ORDER BY t1.a DESC 7693 } 7694 } {57 56 51 46 45 43 39 36 35 34 28 27 26 25 22 19 17 14 13 10 7 3} 7695 do_test boundary3-2.40.ge.3 { 7696 db eval { 7697 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 7698 WHERE t2.a=51 7699 ORDER BY t1.rowid 7700 } 7701 } {51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7702 do_test boundary3-2.40.ge.4 { 7703 db eval { 7704 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 7705 WHERE t2.a=51 7706 ORDER BY t1.rowid DESC 7707 } 7708 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51} 7709 do_test boundary3-2.40.ge.5 { 7710 db eval { 7711 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 7712 WHERE t2.a=51 7713 ORDER BY x 7714 } 7715 } {51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7716 do_test boundary3-2.40.ge.10 { 7717 db eval { 7718 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 7719 WHERE t2.a=51 7720 ORDER BY t1.rowid 7721 } 7722 } {51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7723 do_test boundary3-2.40.ge.11 { 7724 db eval { 7725 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 7726 WHERE t2.a=51 7727 ORDER BY t1.rowid DESC 7728 } 7729 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51} 7730 do_test boundary3-2.40.lt.1 { 7731 db eval { 7732 SELECT t2.a FROM t1 JOIN t2 USING(a) 7733 WHERE t1.rowid < 2147483648 ORDER BY t2.a 7734 } 7735 } {1 2 4 5 6 8 9 11 12 15 16 18 20 21 23 24 29 30 31 32 33 37 38 40 41 42 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 7736 do_test boundary3-2.40.lt.2 { 7737 db eval { 7738 SELECT t2.a FROM t2 NATURAL JOIN t1 7739 WHERE t1.rowid < 2147483648 ORDER BY t1.a DESC 7740 } 7741 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 42 41 40 38 37 33 32 31 30 29 24 23 21 20 18 16 15 12 11 9 8 6 5 4 2 1} 7742 do_test boundary3-2.40.lt.3 { 7743 db eval { 7744 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 7745 WHERE t2.a=51 7746 ORDER BY t1.rowid 7747 } 7748 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20} 7749 do_test boundary3-2.40.lt.4 { 7750 db eval { 7751 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 7752 WHERE t2.a=51 7753 ORDER BY t1.rowid DESC 7754 } 7755 } {20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 7756 do_test boundary3-2.40.lt.5 { 7757 db eval { 7758 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 7759 WHERE t2.a=51 7760 ORDER BY x 7761 } 7762 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 7763 do_test boundary3-2.40.lt.10 { 7764 db eval { 7765 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 7766 WHERE t2.a=51 7767 ORDER BY t1.rowid 7768 } 7769 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20} 7770 do_test boundary3-2.40.lt.11 { 7771 db eval { 7772 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 7773 WHERE t2.a=51 7774 ORDER BY t1.rowid DESC 7775 } 7776 } {20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 7777 do_test boundary3-2.40.le.1 { 7778 db eval { 7779 SELECT t2.a FROM t1 JOIN t2 USING(a) 7780 WHERE t1.rowid <= 2147483648 ORDER BY t2.a 7781 } 7782 } {1 2 4 5 6 8 9 11 12 15 16 18 20 21 23 24 29 30 31 32 33 37 38 40 41 42 44 47 48 49 50 51 52 53 54 55 58 59 60 61 62 63 64} 7783 do_test boundary3-2.40.le.2 { 7784 db eval { 7785 SELECT t2.a FROM t2 NATURAL JOIN t1 7786 WHERE t1.rowid <= 2147483648 ORDER BY t1.a DESC 7787 } 7788 } {64 63 62 61 60 59 58 55 54 53 52 51 50 49 48 47 44 42 41 40 38 37 33 32 31 30 29 24 23 21 20 18 16 15 12 11 9 8 6 5 4 2 1} 7789 do_test boundary3-2.40.le.3 { 7790 db eval { 7791 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 7792 WHERE t2.a=51 7793 ORDER BY t1.rowid 7794 } 7795 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51} 7796 do_test boundary3-2.40.le.4 { 7797 db eval { 7798 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 7799 WHERE t2.a=51 7800 ORDER BY t1.rowid DESC 7801 } 7802 } {51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 7803 do_test boundary3-2.40.le.5 { 7804 db eval { 7805 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 7806 WHERE t2.a=51 7807 ORDER BY x 7808 } 7809 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 7810 do_test boundary3-2.40.le.10 { 7811 db eval { 7812 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 7813 WHERE t2.a=51 7814 ORDER BY t1.rowid 7815 } 7816 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51} 7817 do_test boundary3-2.40.le.11 { 7818 db eval { 7819 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 7820 WHERE t2.a=51 7821 ORDER BY t1.rowid DESC 7822 } 7823 } {51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 7824 do_test boundary3-2.41.1 { 7825 db eval { 7826 SELECT t1.* FROM t1, t2 WHERE t1.rowid=549755813887 AND t2.a=t1.a 7827 } 7828 } {46 0000007fffffffff} 7829 do_test boundary3-2.41.2 { 7830 db eval { 7831 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000007fffffffff' 7832 } 7833 } {549755813887 46} 7834 do_test boundary3-2.41.3 { 7835 db eval { 7836 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=46 7837 } 7838 } {549755813887 0000007fffffffff} 7839 do_test boundary3-2.41.gt.1 { 7840 db eval { 7841 SELECT t2.a FROM t1 JOIN t2 USING(a) 7842 WHERE t1.rowid > 549755813887 ORDER BY t2.a 7843 } 7844 } {3 7 10 13 17 19 25 26 27 28 34 35 43 45 56 57} 7845 do_test boundary3-2.41.gt.2 { 7846 db eval { 7847 SELECT t2.a FROM t2 NATURAL JOIN t1 7848 WHERE t1.rowid > 549755813887 ORDER BY t1.a DESC 7849 } 7850 } {57 56 45 43 35 34 28 27 26 25 19 17 13 10 7 3} 7851 do_test boundary3-2.41.gt.3 { 7852 db eval { 7853 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 7854 WHERE t2.a=46 7855 ORDER BY t1.rowid 7856 } 7857 } {35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7858 do_test boundary3-2.41.gt.4 { 7859 db eval { 7860 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 7861 WHERE t2.a=46 7862 ORDER BY t1.rowid DESC 7863 } 7864 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35} 7865 do_test boundary3-2.41.gt.5 { 7866 db eval { 7867 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 7868 WHERE t2.a=46 7869 ORDER BY x 7870 } 7871 } {35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7872 do_test boundary3-2.41.gt.10 { 7873 db eval { 7874 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 7875 WHERE t2.a=46 7876 ORDER BY t1.rowid 7877 } 7878 } {35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7879 do_test boundary3-2.41.gt.11 { 7880 db eval { 7881 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 7882 WHERE t2.a=46 7883 ORDER BY t1.rowid DESC 7884 } 7885 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35} 7886 do_test boundary3-2.41.ge.1 { 7887 db eval { 7888 SELECT t2.a FROM t1 JOIN t2 USING(a) 7889 WHERE t1.rowid >= 549755813887 ORDER BY t2.a 7890 } 7891 } {3 7 10 13 17 19 25 26 27 28 34 35 43 45 46 56 57} 7892 do_test boundary3-2.41.ge.2 { 7893 db eval { 7894 SELECT t2.a FROM t2 NATURAL JOIN t1 7895 WHERE t1.rowid >= 549755813887 ORDER BY t1.a DESC 7896 } 7897 } {57 56 46 45 43 35 34 28 27 26 25 19 17 13 10 7 3} 7898 do_test boundary3-2.41.ge.3 { 7899 db eval { 7900 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 7901 WHERE t2.a=46 7902 ORDER BY t1.rowid 7903 } 7904 } {46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7905 do_test boundary3-2.41.ge.4 { 7906 db eval { 7907 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 7908 WHERE t2.a=46 7909 ORDER BY t1.rowid DESC 7910 } 7911 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46} 7912 do_test boundary3-2.41.ge.5 { 7913 db eval { 7914 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 7915 WHERE t2.a=46 7916 ORDER BY x 7917 } 7918 } {46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7919 do_test boundary3-2.41.ge.10 { 7920 db eval { 7921 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 7922 WHERE t2.a=46 7923 ORDER BY t1.rowid 7924 } 7925 } {46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 7926 do_test boundary3-2.41.ge.11 { 7927 db eval { 7928 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 7929 WHERE t2.a=46 7930 ORDER BY t1.rowid DESC 7931 } 7932 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46} 7933 do_test boundary3-2.41.lt.1 { 7934 db eval { 7935 SELECT t2.a FROM t1 JOIN t2 USING(a) 7936 WHERE t1.rowid < 549755813887 ORDER BY t2.a 7937 } 7938 } {1 2 4 5 6 8 9 11 12 14 15 16 18 20 21 22 23 24 29 30 31 32 33 36 37 38 39 40 41 42 44 47 48 49 50 51 52 53 54 55 58 59 60 61 62 63 64} 7939 do_test boundary3-2.41.lt.2 { 7940 db eval { 7941 SELECT t2.a FROM t2 NATURAL JOIN t1 7942 WHERE t1.rowid < 549755813887 ORDER BY t1.a DESC 7943 } 7944 } {64 63 62 61 60 59 58 55 54 53 52 51 50 49 48 47 44 42 41 40 39 38 37 36 33 32 31 30 29 24 23 22 21 20 18 16 15 14 12 11 9 8 6 5 4 2 1} 7945 do_test boundary3-2.41.lt.3 { 7946 db eval { 7947 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 7948 WHERE t2.a=46 7949 ORDER BY t1.rowid 7950 } 7951 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22} 7952 do_test boundary3-2.41.lt.4 { 7953 db eval { 7954 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 7955 WHERE t2.a=46 7956 ORDER BY t1.rowid DESC 7957 } 7958 } {22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 7959 do_test boundary3-2.41.lt.5 { 7960 db eval { 7961 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 7962 WHERE t2.a=46 7963 ORDER BY x 7964 } 7965 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 7966 do_test boundary3-2.41.lt.10 { 7967 db eval { 7968 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 7969 WHERE t2.a=46 7970 ORDER BY t1.rowid 7971 } 7972 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22} 7973 do_test boundary3-2.41.lt.11 { 7974 db eval { 7975 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 7976 WHERE t2.a=46 7977 ORDER BY t1.rowid DESC 7978 } 7979 } {22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 7980 do_test boundary3-2.41.le.1 { 7981 db eval { 7982 SELECT t2.a FROM t1 JOIN t2 USING(a) 7983 WHERE t1.rowid <= 549755813887 ORDER BY t2.a 7984 } 7985 } {1 2 4 5 6 8 9 11 12 14 15 16 18 20 21 22 23 24 29 30 31 32 33 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 58 59 60 61 62 63 64} 7986 do_test boundary3-2.41.le.2 { 7987 db eval { 7988 SELECT t2.a FROM t2 NATURAL JOIN t1 7989 WHERE t1.rowid <= 549755813887 ORDER BY t1.a DESC 7990 } 7991 } {64 63 62 61 60 59 58 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 33 32 31 30 29 24 23 22 21 20 18 16 15 14 12 11 9 8 6 5 4 2 1} 7992 do_test boundary3-2.41.le.3 { 7993 db eval { 7994 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 7995 WHERE t2.a=46 7996 ORDER BY t1.rowid 7997 } 7998 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46} 7999 do_test boundary3-2.41.le.4 { 8000 db eval { 8001 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 8002 WHERE t2.a=46 8003 ORDER BY t1.rowid DESC 8004 } 8005 } {46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 8006 do_test boundary3-2.41.le.5 { 8007 db eval { 8008 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 8009 WHERE t2.a=46 8010 ORDER BY x 8011 } 8012 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 8013 do_test boundary3-2.41.le.10 { 8014 db eval { 8015 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 8016 WHERE t2.a=46 8017 ORDER BY t1.rowid 8018 } 8019 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46} 8020 do_test boundary3-2.41.le.11 { 8021 db eval { 8022 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 8023 WHERE t2.a=46 8024 ORDER BY t1.rowid DESC 8025 } 8026 } {46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 8027 do_test boundary3-2.42.1 { 8028 db eval { 8029 SELECT t1.* FROM t1, t2 WHERE t1.rowid=-549755813888 AND t2.a=t1.a 8030 } 8031 } {63 ffffff8000000000} 8032 do_test boundary3-2.42.2 { 8033 db eval { 8034 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='ffffff8000000000' 8035 } 8036 } {-549755813888 63} 8037 do_test boundary3-2.42.3 { 8038 db eval { 8039 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=63 8040 } 8041 } {-549755813888 ffffff8000000000} 8042 do_test boundary3-2.42.gt.1 { 8043 db eval { 8044 SELECT t2.a FROM t1 JOIN t2 USING(a) 8045 WHERE t1.rowid > -549755813888 ORDER BY t2.a 8046 } 8047 } {1 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 45 46 47 48 49 50 51 52 53 54 56 57 59 60 61 62} 8048 do_test boundary3-2.42.gt.2 { 8049 db eval { 8050 SELECT t2.a FROM t2 NATURAL JOIN t1 8051 WHERE t1.rowid > -549755813888 ORDER BY t1.a DESC 8052 } 8053 } {62 61 60 59 57 56 54 53 52 51 50 49 48 47 46 45 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 1} 8054 do_test boundary3-2.42.gt.3 { 8055 db eval { 8056 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 8057 WHERE t2.a=63 8058 ORDER BY t1.rowid 8059 } 8060 } {47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 8061 do_test boundary3-2.42.gt.4 { 8062 db eval { 8063 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 8064 WHERE t2.a=63 8065 ORDER BY t1.rowid DESC 8066 } 8067 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47} 8068 do_test boundary3-2.42.gt.5 { 8069 db eval { 8070 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 8071 WHERE t2.a=63 8072 ORDER BY x 8073 } 8074 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 47 11 1 37 29 32 54 53 52 33 38} 8075 do_test boundary3-2.42.gt.10 { 8076 db eval { 8077 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 8078 WHERE t2.a=63 8079 ORDER BY t1.rowid 8080 } 8081 } {47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 8082 do_test boundary3-2.42.gt.11 { 8083 db eval { 8084 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 8085 WHERE t2.a=63 8086 ORDER BY t1.rowid DESC 8087 } 8088 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47} 8089 do_test boundary3-2.42.ge.1 { 8090 db eval { 8091 SELECT t2.a FROM t1 JOIN t2 USING(a) 8092 WHERE t1.rowid >= -549755813888 ORDER BY t2.a 8093 } 8094 } {1 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 45 46 47 48 49 50 51 52 53 54 56 57 59 60 61 62 63} 8095 do_test boundary3-2.42.ge.2 { 8096 db eval { 8097 SELECT t2.a FROM t2 NATURAL JOIN t1 8098 WHERE t1.rowid >= -549755813888 ORDER BY t1.a DESC 8099 } 8100 } {63 62 61 60 59 57 56 54 53 52 51 50 49 48 47 46 45 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 1} 8101 do_test boundary3-2.42.ge.3 { 8102 db eval { 8103 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 8104 WHERE t2.a=63 8105 ORDER BY t1.rowid 8106 } 8107 } {63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 8108 do_test boundary3-2.42.ge.4 { 8109 db eval { 8110 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 8111 WHERE t2.a=63 8112 ORDER BY t1.rowid DESC 8113 } 8114 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63} 8115 do_test boundary3-2.42.ge.5 { 8116 db eval { 8117 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 8118 WHERE t2.a=63 8119 ORDER BY x 8120 } 8121 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 63 47 11 1 37 29 32 54 53 52 33 38} 8122 do_test boundary3-2.42.ge.10 { 8123 db eval { 8124 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 8125 WHERE t2.a=63 8126 ORDER BY t1.rowid 8127 } 8128 } {63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 8129 do_test boundary3-2.42.ge.11 { 8130 db eval { 8131 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 8132 WHERE t2.a=63 8133 ORDER BY t1.rowid DESC 8134 } 8135 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63} 8136 do_test boundary3-2.42.lt.1 { 8137 db eval { 8138 SELECT t2.a FROM t1 JOIN t2 USING(a) 8139 WHERE t1.rowid < -549755813888 ORDER BY t2.a 8140 } 8141 } {2 21 44 55 58 64} 8142 do_test boundary3-2.42.lt.2 { 8143 db eval { 8144 SELECT t2.a FROM t2 NATURAL JOIN t1 8145 WHERE t1.rowid < -549755813888 ORDER BY t1.a DESC 8146 } 8147 } {64 58 55 44 21 2} 8148 do_test boundary3-2.42.lt.3 { 8149 db eval { 8150 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 8151 WHERE t2.a=63 8152 ORDER BY t1.rowid 8153 } 8154 } {55 2 64 21 44 58} 8155 do_test boundary3-2.42.lt.4 { 8156 db eval { 8157 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 8158 WHERE t2.a=63 8159 ORDER BY t1.rowid DESC 8160 } 8161 } {58 44 21 64 2 55} 8162 do_test boundary3-2.42.lt.5 { 8163 db eval { 8164 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 8165 WHERE t2.a=63 8166 ORDER BY x 8167 } 8168 } {55 2 64 21 44 58} 8169 do_test boundary3-2.42.lt.10 { 8170 db eval { 8171 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 8172 WHERE t2.a=63 8173 ORDER BY t1.rowid 8174 } 8175 } {55 2 64 21 44 58} 8176 do_test boundary3-2.42.lt.11 { 8177 db eval { 8178 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 8179 WHERE t2.a=63 8180 ORDER BY t1.rowid DESC 8181 } 8182 } {58 44 21 64 2 55} 8183 do_test boundary3-2.42.le.1 { 8184 db eval { 8185 SELECT t2.a FROM t1 JOIN t2 USING(a) 8186 WHERE t1.rowid <= -549755813888 ORDER BY t2.a 8187 } 8188 } {2 21 44 55 58 63 64} 8189 do_test boundary3-2.42.le.2 { 8190 db eval { 8191 SELECT t2.a FROM t2 NATURAL JOIN t1 8192 WHERE t1.rowid <= -549755813888 ORDER BY t1.a DESC 8193 } 8194 } {64 63 58 55 44 21 2} 8195 do_test boundary3-2.42.le.3 { 8196 db eval { 8197 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 8198 WHERE t2.a=63 8199 ORDER BY t1.rowid 8200 } 8201 } {55 2 64 21 44 58 63} 8202 do_test boundary3-2.42.le.4 { 8203 db eval { 8204 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 8205 WHERE t2.a=63 8206 ORDER BY t1.rowid DESC 8207 } 8208 } {63 58 44 21 64 2 55} 8209 do_test boundary3-2.42.le.5 { 8210 db eval { 8211 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 8212 WHERE t2.a=63 8213 ORDER BY x 8214 } 8215 } {55 2 64 21 44 58 63} 8216 do_test boundary3-2.42.le.10 { 8217 db eval { 8218 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 8219 WHERE t2.a=63 8220 ORDER BY t1.rowid 8221 } 8222 } {55 2 64 21 44 58 63} 8223 do_test boundary3-2.42.le.11 { 8224 db eval { 8225 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 8226 WHERE t2.a=63 8227 ORDER BY t1.rowid DESC 8228 } 8229 } {63 58 44 21 64 2 55} 8230 do_test boundary3-2.43.1 { 8231 db eval { 8232 SELECT t1.* FROM t1, t2 WHERE t1.rowid=281474976710655 AND t2.a=t1.a 8233 } 8234 } {10 0000ffffffffffff} 8235 do_test boundary3-2.43.2 { 8236 db eval { 8237 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000ffffffffffff' 8238 } 8239 } {281474976710655 10} 8240 do_test boundary3-2.43.3 { 8241 db eval { 8242 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=10 8243 } 8244 } {281474976710655 0000ffffffffffff} 8245 do_test boundary3-2.43.gt.1 { 8246 db eval { 8247 SELECT t2.a FROM t1 JOIN t2 USING(a) 8248 WHERE t1.rowid > 281474976710655 ORDER BY t2.a 8249 } 8250 } {3 13 17 26 27 28 43 45} 8251 do_test boundary3-2.43.gt.2 { 8252 db eval { 8253 SELECT t2.a FROM t2 NATURAL JOIN t1 8254 WHERE t1.rowid > 281474976710655 ORDER BY t1.a DESC 8255 } 8256 } {45 43 28 27 26 17 13 3} 8257 do_test boundary3-2.43.gt.3 { 8258 db eval { 8259 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 8260 WHERE t2.a=10 8261 ORDER BY t1.rowid 8262 } 8263 } {26 13 43 27 45 17 28 3} 8264 do_test boundary3-2.43.gt.4 { 8265 db eval { 8266 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 8267 WHERE t2.a=10 8268 ORDER BY t1.rowid DESC 8269 } 8270 } {3 28 17 45 27 43 13 26} 8271 do_test boundary3-2.43.gt.5 { 8272 db eval { 8273 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 8274 WHERE t2.a=10 8275 ORDER BY x 8276 } 8277 } {26 13 43 27 45 17 28 3} 8278 do_test boundary3-2.43.ge.1 { 8279 db eval { 8280 SELECT t2.a FROM t1 JOIN t2 USING(a) 8281 WHERE t1.rowid >= 281474976710655 ORDER BY t2.a 8282 } 8283 } {3 10 13 17 26 27 28 43 45} 8284 do_test boundary3-2.43.ge.2 { 8285 db eval { 8286 SELECT t2.a FROM t2 NATURAL JOIN t1 8287 WHERE t1.rowid >= 281474976710655 ORDER BY t1.a DESC 8288 } 8289 } {45 43 28 27 26 17 13 10 3} 8290 do_test boundary3-2.43.ge.3 { 8291 db eval { 8292 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 8293 WHERE t2.a=10 8294 ORDER BY t1.rowid 8295 } 8296 } {10 26 13 43 27 45 17 28 3} 8297 do_test boundary3-2.43.ge.4 { 8298 db eval { 8299 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 8300 WHERE t2.a=10 8301 ORDER BY t1.rowid DESC 8302 } 8303 } {3 28 17 45 27 43 13 26 10} 8304 do_test boundary3-2.43.ge.5 { 8305 db eval { 8306 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 8307 WHERE t2.a=10 8308 ORDER BY x 8309 } 8310 } {10 26 13 43 27 45 17 28 3} 8311 do_test boundary3-2.43.lt.1 { 8312 db eval { 8313 SELECT t2.a FROM t1 JOIN t2 USING(a) 8314 WHERE t1.rowid < 281474976710655 ORDER BY t2.a 8315 } 8316 } {1 2 4 5 6 7 8 9 11 12 14 15 16 18 19 20 21 22 23 24 25 29 30 31 32 33 34 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64} 8317 do_test boundary3-2.43.lt.2 { 8318 db eval { 8319 SELECT t2.a FROM t2 NATURAL JOIN t1 8320 WHERE t1.rowid < 281474976710655 ORDER BY t1.a DESC 8321 } 8322 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 34 33 32 31 30 29 25 24 23 22 21 20 19 18 16 15 14 12 11 9 8 7 6 5 4 2 1} 8323 do_test boundary3-2.43.lt.3 { 8324 db eval { 8325 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 8326 WHERE t2.a=10 8327 ORDER BY t1.rowid 8328 } 8329 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34} 8330 do_test boundary3-2.43.lt.4 { 8331 db eval { 8332 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 8333 WHERE t2.a=10 8334 ORDER BY t1.rowid DESC 8335 } 8336 } {34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 8337 do_test boundary3-2.43.lt.5 { 8338 db eval { 8339 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 8340 WHERE t2.a=10 8341 ORDER BY x 8342 } 8343 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 8344 do_test boundary3-2.43.le.1 { 8345 db eval { 8346 SELECT t2.a FROM t1 JOIN t2 USING(a) 8347 WHERE t1.rowid <= 281474976710655 ORDER BY t2.a 8348 } 8349 } {1 2 4 5 6 7 8 9 10 11 12 14 15 16 18 19 20 21 22 23 24 25 29 30 31 32 33 34 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64} 8350 do_test boundary3-2.43.le.2 { 8351 db eval { 8352 SELECT t2.a FROM t2 NATURAL JOIN t1 8353 WHERE t1.rowid <= 281474976710655 ORDER BY t1.a DESC 8354 } 8355 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 34 33 32 31 30 29 25 24 23 22 21 20 19 18 16 15 14 12 11 10 9 8 7 6 5 4 2 1} 8356 do_test boundary3-2.43.le.3 { 8357 db eval { 8358 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 8359 WHERE t2.a=10 8360 ORDER BY t1.rowid 8361 } 8362 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10} 8363 do_test boundary3-2.43.le.4 { 8364 db eval { 8365 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 8366 WHERE t2.a=10 8367 ORDER BY t1.rowid DESC 8368 } 8369 } {10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 8370 do_test boundary3-2.43.le.5 { 8371 db eval { 8372 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 8373 WHERE t2.a=10 8374 ORDER BY x 8375 } 8376 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 8377 do_test boundary3-2.44.1 { 8378 db eval { 8379 SELECT t1.* FROM t1, t2 WHERE t1.rowid=4398046511103 AND t2.a=t1.a 8380 } 8381 } {7 000003ffffffffff} 8382 do_test boundary3-2.44.2 { 8383 db eval { 8384 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='000003ffffffffff' 8385 } 8386 } {4398046511103 7} 8387 do_test boundary3-2.44.3 { 8388 db eval { 8389 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=7 8390 } 8391 } {4398046511103 000003ffffffffff} 8392 do_test boundary3-2.44.gt.1 { 8393 db eval { 8394 SELECT t2.a FROM t1 JOIN t2 USING(a) 8395 WHERE t1.rowid > 4398046511103 ORDER BY t2.a 8396 } 8397 } {3 10 13 17 25 26 27 28 34 43 45 56} 8398 do_test boundary3-2.44.gt.2 { 8399 db eval { 8400 SELECT t2.a FROM t2 NATURAL JOIN t1 8401 WHERE t1.rowid > 4398046511103 ORDER BY t1.a DESC 8402 } 8403 } {56 45 43 34 28 27 26 25 17 13 10 3} 8404 do_test boundary3-2.44.gt.3 { 8405 db eval { 8406 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 8407 WHERE t2.a=7 8408 ORDER BY t1.rowid 8409 } 8410 } {56 25 34 10 26 13 43 27 45 17 28 3} 8411 do_test boundary3-2.44.gt.4 { 8412 db eval { 8413 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 8414 WHERE t2.a=7 8415 ORDER BY t1.rowid DESC 8416 } 8417 } {3 28 17 45 27 43 13 26 10 34 25 56} 8418 do_test boundary3-2.44.gt.5 { 8419 db eval { 8420 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 8421 WHERE t2.a=7 8422 ORDER BY x 8423 } 8424 } {56 25 34 10 26 13 43 27 45 17 28 3} 8425 do_test boundary3-2.44.gt.10 { 8426 db eval { 8427 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 8428 WHERE t2.a=7 8429 ORDER BY t1.rowid 8430 } 8431 } {56 25 34 10 26 13 43 27 45 17 28 3} 8432 do_test boundary3-2.44.gt.11 { 8433 db eval { 8434 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 8435 WHERE t2.a=7 8436 ORDER BY t1.rowid DESC 8437 } 8438 } {3 28 17 45 27 43 13 26 10 34 25 56} 8439 do_test boundary3-2.44.ge.1 { 8440 db eval { 8441 SELECT t2.a FROM t1 JOIN t2 USING(a) 8442 WHERE t1.rowid >= 4398046511103 ORDER BY t2.a 8443 } 8444 } {3 7 10 13 17 25 26 27 28 34 43 45 56} 8445 do_test boundary3-2.44.ge.2 { 8446 db eval { 8447 SELECT t2.a FROM t2 NATURAL JOIN t1 8448 WHERE t1.rowid >= 4398046511103 ORDER BY t1.a DESC 8449 } 8450 } {56 45 43 34 28 27 26 25 17 13 10 7 3} 8451 do_test boundary3-2.44.ge.3 { 8452 db eval { 8453 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 8454 WHERE t2.a=7 8455 ORDER BY t1.rowid 8456 } 8457 } {7 56 25 34 10 26 13 43 27 45 17 28 3} 8458 do_test boundary3-2.44.ge.4 { 8459 db eval { 8460 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 8461 WHERE t2.a=7 8462 ORDER BY t1.rowid DESC 8463 } 8464 } {3 28 17 45 27 43 13 26 10 34 25 56 7} 8465 do_test boundary3-2.44.ge.5 { 8466 db eval { 8467 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 8468 WHERE t2.a=7 8469 ORDER BY x 8470 } 8471 } {7 56 25 34 10 26 13 43 27 45 17 28 3} 8472 do_test boundary3-2.44.ge.10 { 8473 db eval { 8474 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 8475 WHERE t2.a=7 8476 ORDER BY t1.rowid 8477 } 8478 } {7 56 25 34 10 26 13 43 27 45 17 28 3} 8479 do_test boundary3-2.44.ge.11 { 8480 db eval { 8481 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 8482 WHERE t2.a=7 8483 ORDER BY t1.rowid DESC 8484 } 8485 } {3 28 17 45 27 43 13 26 10 34 25 56 7} 8486 do_test boundary3-2.44.lt.1 { 8487 db eval { 8488 SELECT t2.a FROM t1 JOIN t2 USING(a) 8489 WHERE t1.rowid < 4398046511103 ORDER BY t2.a 8490 } 8491 } {1 2 4 5 6 8 9 11 12 14 15 16 18 19 20 21 22 23 24 29 30 31 32 33 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 57 58 59 60 61 62 63 64} 8492 do_test boundary3-2.44.lt.2 { 8493 db eval { 8494 SELECT t2.a FROM t2 NATURAL JOIN t1 8495 WHERE t1.rowid < 4398046511103 ORDER BY t1.a DESC 8496 } 8497 } {64 63 62 61 60 59 58 57 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 33 32 31 30 29 24 23 22 21 20 19 18 16 15 14 12 11 9 8 6 5 4 2 1} 8498 do_test boundary3-2.44.lt.3 { 8499 db eval { 8500 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 8501 WHERE t2.a=7 8502 ORDER BY t1.rowid 8503 } 8504 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19} 8505 do_test boundary3-2.44.lt.4 { 8506 db eval { 8507 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 8508 WHERE t2.a=7 8509 ORDER BY t1.rowid DESC 8510 } 8511 } {19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 8512 do_test boundary3-2.44.lt.5 { 8513 db eval { 8514 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 8515 WHERE t2.a=7 8516 ORDER BY x 8517 } 8518 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 8519 do_test boundary3-2.44.lt.10 { 8520 db eval { 8521 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 8522 WHERE t2.a=7 8523 ORDER BY t1.rowid 8524 } 8525 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19} 8526 do_test boundary3-2.44.lt.11 { 8527 db eval { 8528 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 8529 WHERE t2.a=7 8530 ORDER BY t1.rowid DESC 8531 } 8532 } {19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 8533 do_test boundary3-2.44.le.1 { 8534 db eval { 8535 SELECT t2.a FROM t1 JOIN t2 USING(a) 8536 WHERE t1.rowid <= 4398046511103 ORDER BY t2.a 8537 } 8538 } {1 2 4 5 6 7 8 9 11 12 14 15 16 18 19 20 21 22 23 24 29 30 31 32 33 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 57 58 59 60 61 62 63 64} 8539 do_test boundary3-2.44.le.2 { 8540 db eval { 8541 SELECT t2.a FROM t2 NATURAL JOIN t1 8542 WHERE t1.rowid <= 4398046511103 ORDER BY t1.a DESC 8543 } 8544 } {64 63 62 61 60 59 58 57 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 33 32 31 30 29 24 23 22 21 20 19 18 16 15 14 12 11 9 8 7 6 5 4 2 1} 8545 do_test boundary3-2.44.le.3 { 8546 db eval { 8547 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 8548 WHERE t2.a=7 8549 ORDER BY t1.rowid 8550 } 8551 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7} 8552 do_test boundary3-2.44.le.4 { 8553 db eval { 8554 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 8555 WHERE t2.a=7 8556 ORDER BY t1.rowid DESC 8557 } 8558 } {7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 8559 do_test boundary3-2.44.le.5 { 8560 db eval { 8561 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 8562 WHERE t2.a=7 8563 ORDER BY x 8564 } 8565 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 8566 do_test boundary3-2.44.le.10 { 8567 db eval { 8568 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 8569 WHERE t2.a=7 8570 ORDER BY t1.rowid 8571 } 8572 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7} 8573 do_test boundary3-2.44.le.11 { 8574 db eval { 8575 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 8576 WHERE t2.a=7 8577 ORDER BY t1.rowid DESC 8578 } 8579 } {7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 8580 do_test boundary3-2.45.1 { 8581 db eval { 8582 SELECT t1.* FROM t1, t2 WHERE t1.rowid=268435455 AND t2.a=t1.a 8583 } 8584 } {12 000000000fffffff} 8585 do_test boundary3-2.45.2 { 8586 db eval { 8587 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='000000000fffffff' 8588 } 8589 } {268435455 12} 8590 do_test boundary3-2.45.3 { 8591 db eval { 8592 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=12 8593 } 8594 } {268435455 000000000fffffff} 8595 do_test boundary3-2.45.gt.1 { 8596 db eval { 8597 SELECT t2.a FROM t1 JOIN t2 USING(a) 8598 WHERE t1.rowid > 268435455 ORDER BY t2.a 8599 } 8600 } {3 7 10 13 14 17 19 20 22 25 26 27 28 34 35 36 39 40 43 45 46 51 56 57} 8601 do_test boundary3-2.45.gt.2 { 8602 db eval { 8603 SELECT t2.a FROM t2 NATURAL JOIN t1 8604 WHERE t1.rowid > 268435455 ORDER BY t1.a DESC 8605 } 8606 } {57 56 51 46 45 43 40 39 36 35 34 28 27 26 25 22 20 19 17 14 13 10 7 3} 8607 do_test boundary3-2.45.gt.3 { 8608 db eval { 8609 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 8610 WHERE t2.a=12 8611 ORDER BY t1.rowid 8612 } 8613 } {40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 8614 do_test boundary3-2.45.gt.4 { 8615 db eval { 8616 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 8617 WHERE t2.a=12 8618 ORDER BY t1.rowid DESC 8619 } 8620 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40} 8621 do_test boundary3-2.45.gt.5 { 8622 db eval { 8623 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 8624 WHERE t2.a=12 8625 ORDER BY x 8626 } 8627 } {40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 8628 do_test boundary3-2.45.gt.10 { 8629 db eval { 8630 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 8631 WHERE t2.a=12 8632 ORDER BY t1.rowid 8633 } 8634 } {40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 8635 do_test boundary3-2.45.gt.11 { 8636 db eval { 8637 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 8638 WHERE t2.a=12 8639 ORDER BY t1.rowid DESC 8640 } 8641 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40} 8642 do_test boundary3-2.45.ge.1 { 8643 db eval { 8644 SELECT t2.a FROM t1 JOIN t2 USING(a) 8645 WHERE t1.rowid >= 268435455 ORDER BY t2.a 8646 } 8647 } {3 7 10 12 13 14 17 19 20 22 25 26 27 28 34 35 36 39 40 43 45 46 51 56 57} 8648 do_test boundary3-2.45.ge.2 { 8649 db eval { 8650 SELECT t2.a FROM t2 NATURAL JOIN t1 8651 WHERE t1.rowid >= 268435455 ORDER BY t1.a DESC 8652 } 8653 } {57 56 51 46 45 43 40 39 36 35 34 28 27 26 25 22 20 19 17 14 13 12 10 7 3} 8654 do_test boundary3-2.45.ge.3 { 8655 db eval { 8656 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 8657 WHERE t2.a=12 8658 ORDER BY t1.rowid 8659 } 8660 } {12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 8661 do_test boundary3-2.45.ge.4 { 8662 db eval { 8663 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 8664 WHERE t2.a=12 8665 ORDER BY t1.rowid DESC 8666 } 8667 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12} 8668 do_test boundary3-2.45.ge.5 { 8669 db eval { 8670 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 8671 WHERE t2.a=12 8672 ORDER BY x 8673 } 8674 } {12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 8675 do_test boundary3-2.45.ge.10 { 8676 db eval { 8677 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 8678 WHERE t2.a=12 8679 ORDER BY t1.rowid 8680 } 8681 } {12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 8682 do_test boundary3-2.45.ge.11 { 8683 db eval { 8684 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 8685 WHERE t2.a=12 8686 ORDER BY t1.rowid DESC 8687 } 8688 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12} 8689 do_test boundary3-2.45.lt.1 { 8690 db eval { 8691 SELECT t2.a FROM t1 JOIN t2 USING(a) 8692 WHERE t1.rowid < 268435455 ORDER BY t2.a 8693 } 8694 } {1 2 4 5 6 8 9 11 15 16 18 21 23 24 29 30 31 32 33 37 38 41 42 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 8695 do_test boundary3-2.45.lt.2 { 8696 db eval { 8697 SELECT t2.a FROM t2 NATURAL JOIN t1 8698 WHERE t1.rowid < 268435455 ORDER BY t1.a DESC 8699 } 8700 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 42 41 38 37 33 32 31 30 29 24 23 21 18 16 15 11 9 8 6 5 4 2 1} 8701 do_test boundary3-2.45.lt.3 { 8702 db eval { 8703 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 8704 WHERE t2.a=12 8705 ORDER BY t1.rowid 8706 } 8707 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6} 8708 do_test boundary3-2.45.lt.4 { 8709 db eval { 8710 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 8711 WHERE t2.a=12 8712 ORDER BY t1.rowid DESC 8713 } 8714 } {6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 8715 do_test boundary3-2.45.lt.5 { 8716 db eval { 8717 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 8718 WHERE t2.a=12 8719 ORDER BY x 8720 } 8721 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 8722 do_test boundary3-2.45.lt.10 { 8723 db eval { 8724 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 8725 WHERE t2.a=12 8726 ORDER BY t1.rowid 8727 } 8728 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6} 8729 do_test boundary3-2.45.lt.11 { 8730 db eval { 8731 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 8732 WHERE t2.a=12 8733 ORDER BY t1.rowid DESC 8734 } 8735 } {6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 8736 do_test boundary3-2.45.le.1 { 8737 db eval { 8738 SELECT t2.a FROM t1 JOIN t2 USING(a) 8739 WHERE t1.rowid <= 268435455 ORDER BY t2.a 8740 } 8741 } {1 2 4 5 6 8 9 11 12 15 16 18 21 23 24 29 30 31 32 33 37 38 41 42 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 8742 do_test boundary3-2.45.le.2 { 8743 db eval { 8744 SELECT t2.a FROM t2 NATURAL JOIN t1 8745 WHERE t1.rowid <= 268435455 ORDER BY t1.a DESC 8746 } 8747 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 42 41 38 37 33 32 31 30 29 24 23 21 18 16 15 12 11 9 8 6 5 4 2 1} 8748 do_test boundary3-2.45.le.3 { 8749 db eval { 8750 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 8751 WHERE t2.a=12 8752 ORDER BY t1.rowid 8753 } 8754 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12} 8755 do_test boundary3-2.45.le.4 { 8756 db eval { 8757 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 8758 WHERE t2.a=12 8759 ORDER BY t1.rowid DESC 8760 } 8761 } {12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 8762 do_test boundary3-2.45.le.5 { 8763 db eval { 8764 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 8765 WHERE t2.a=12 8766 ORDER BY x 8767 } 8768 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 8769 do_test boundary3-2.45.le.10 { 8770 db eval { 8771 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 8772 WHERE t2.a=12 8773 ORDER BY t1.rowid 8774 } 8775 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12} 8776 do_test boundary3-2.45.le.11 { 8777 db eval { 8778 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 8779 WHERE t2.a=12 8780 ORDER BY t1.rowid DESC 8781 } 8782 } {12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 8783 do_test boundary3-2.46.1 { 8784 db eval { 8785 SELECT t1.* FROM t1, t2 WHERE t1.rowid=-9223372036854775808 AND t2.a=t1.a 8786 } 8787 } {55 8000000000000000} 8788 do_test boundary3-2.46.2 { 8789 db eval { 8790 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='8000000000000000' 8791 } 8792 } {-9223372036854775808 55} 8793 do_test boundary3-2.46.3 { 8794 db eval { 8795 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=55 8796 } 8797 } {-9223372036854775808 8000000000000000} 8798 do_test boundary3-2.46.gt.1 { 8799 db eval { 8800 SELECT t2.a FROM t1 JOIN t2 USING(a) 8801 WHERE t1.rowid > -9223372036854775808 ORDER BY t2.a 8802 } 8803 } {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 56 57 58 59 60 61 62 63 64} 8804 do_test boundary3-2.46.gt.2 { 8805 db eval { 8806 SELECT t2.a FROM t2 NATURAL JOIN t1 8807 WHERE t1.rowid > -9223372036854775808 ORDER BY t1.a DESC 8808 } 8809 } {64 63 62 61 60 59 58 57 56 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1} 8810 do_test boundary3-2.46.gt.3 { 8811 db eval { 8812 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 8813 WHERE t2.a=55 8814 ORDER BY t1.rowid 8815 } 8816 } {2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 8817 do_test boundary3-2.46.gt.4 { 8818 db eval { 8819 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 8820 WHERE t2.a=55 8821 ORDER BY t1.rowid DESC 8822 } 8823 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2} 8824 do_test boundary3-2.46.gt.5 { 8825 db eval { 8826 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 8827 WHERE t2.a=55 8828 ORDER BY x 8829 } 8830 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 8831 do_test boundary3-2.46.ge.1 { 8832 db eval { 8833 SELECT t2.a FROM t1 JOIN t2 USING(a) 8834 WHERE t1.rowid >= -9223372036854775808 ORDER BY t2.a 8835 } 8836 } {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} 8837 do_test boundary3-2.46.ge.2 { 8838 db eval { 8839 SELECT t2.a FROM t2 NATURAL JOIN t1 8840 WHERE t1.rowid >= -9223372036854775808 ORDER BY t1.a DESC 8841 } 8842 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1} 8843 do_test boundary3-2.46.ge.3 { 8844 db eval { 8845 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 8846 WHERE t2.a=55 8847 ORDER BY t1.rowid 8848 } 8849 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 8850 do_test boundary3-2.46.ge.4 { 8851 db eval { 8852 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 8853 WHERE t2.a=55 8854 ORDER BY t1.rowid DESC 8855 } 8856 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 8857 do_test boundary3-2.46.ge.5 { 8858 db eval { 8859 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 8860 WHERE t2.a=55 8861 ORDER BY x 8862 } 8863 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 8864 do_test boundary3-2.46.lt.1 { 8865 db eval { 8866 SELECT t2.a FROM t1 JOIN t2 USING(a) 8867 WHERE t1.rowid < -9223372036854775808 ORDER BY t2.a 8868 } 8869 } {} 8870 do_test boundary3-2.46.lt.2 { 8871 db eval { 8872 SELECT t2.a FROM t2 NATURAL JOIN t1 8873 WHERE t1.rowid < -9223372036854775808 ORDER BY t1.a DESC 8874 } 8875 } {} 8876 do_test boundary3-2.46.lt.3 { 8877 db eval { 8878 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 8879 WHERE t2.a=55 8880 ORDER BY t1.rowid 8881 } 8882 } {} 8883 do_test boundary3-2.46.lt.4 { 8884 db eval { 8885 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 8886 WHERE t2.a=55 8887 ORDER BY t1.rowid DESC 8888 } 8889 } {} 8890 do_test boundary3-2.46.lt.5 { 8891 db eval { 8892 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 8893 WHERE t2.a=55 8894 ORDER BY x 8895 } 8896 } {} 8897 do_test boundary3-2.46.le.1 { 8898 db eval { 8899 SELECT t2.a FROM t1 JOIN t2 USING(a) 8900 WHERE t1.rowid <= -9223372036854775808 ORDER BY t2.a 8901 } 8902 } {55} 8903 do_test boundary3-2.46.le.2 { 8904 db eval { 8905 SELECT t2.a FROM t2 NATURAL JOIN t1 8906 WHERE t1.rowid <= -9223372036854775808 ORDER BY t1.a DESC 8907 } 8908 } {55} 8909 do_test boundary3-2.46.le.3 { 8910 db eval { 8911 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 8912 WHERE t2.a=55 8913 ORDER BY t1.rowid 8914 } 8915 } {55} 8916 do_test boundary3-2.46.le.4 { 8917 db eval { 8918 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 8919 WHERE t2.a=55 8920 ORDER BY t1.rowid DESC 8921 } 8922 } {55} 8923 do_test boundary3-2.46.le.5 { 8924 db eval { 8925 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 8926 WHERE t2.a=55 8927 ORDER BY x 8928 } 8929 } {55} 8930 do_test boundary3-2.47.1 { 8931 db eval { 8932 SELECT t1.* FROM t1, t2 WHERE t1.rowid=562949953421312 AND t2.a=t1.a 8933 } 8934 } {43 0002000000000000} 8935 do_test boundary3-2.47.2 { 8936 db eval { 8937 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0002000000000000' 8938 } 8939 } {562949953421312 43} 8940 do_test boundary3-2.47.3 { 8941 db eval { 8942 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=43 8943 } 8944 } {562949953421312 0002000000000000} 8945 do_test boundary3-2.47.gt.1 { 8946 db eval { 8947 SELECT t2.a FROM t1 JOIN t2 USING(a) 8948 WHERE t1.rowid > 562949953421312 ORDER BY t2.a 8949 } 8950 } {3 17 27 28 45} 8951 do_test boundary3-2.47.gt.2 { 8952 db eval { 8953 SELECT t2.a FROM t2 NATURAL JOIN t1 8954 WHERE t1.rowid > 562949953421312 ORDER BY t1.a DESC 8955 } 8956 } {45 28 27 17 3} 8957 do_test boundary3-2.47.gt.3 { 8958 db eval { 8959 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 8960 WHERE t2.a=43 8961 ORDER BY t1.rowid 8962 } 8963 } {27 45 17 28 3} 8964 do_test boundary3-2.47.gt.4 { 8965 db eval { 8966 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 8967 WHERE t2.a=43 8968 ORDER BY t1.rowid DESC 8969 } 8970 } {3 28 17 45 27} 8971 do_test boundary3-2.47.gt.5 { 8972 db eval { 8973 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 8974 WHERE t2.a=43 8975 ORDER BY x 8976 } 8977 } {27 45 17 28 3} 8978 do_test boundary3-2.47.ge.1 { 8979 db eval { 8980 SELECT t2.a FROM t1 JOIN t2 USING(a) 8981 WHERE t1.rowid >= 562949953421312 ORDER BY t2.a 8982 } 8983 } {3 17 27 28 43 45} 8984 do_test boundary3-2.47.ge.2 { 8985 db eval { 8986 SELECT t2.a FROM t2 NATURAL JOIN t1 8987 WHERE t1.rowid >= 562949953421312 ORDER BY t1.a DESC 8988 } 8989 } {45 43 28 27 17 3} 8990 do_test boundary3-2.47.ge.3 { 8991 db eval { 8992 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 8993 WHERE t2.a=43 8994 ORDER BY t1.rowid 8995 } 8996 } {43 27 45 17 28 3} 8997 do_test boundary3-2.47.ge.4 { 8998 db eval { 8999 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 9000 WHERE t2.a=43 9001 ORDER BY t1.rowid DESC 9002 } 9003 } {3 28 17 45 27 43} 9004 do_test boundary3-2.47.ge.5 { 9005 db eval { 9006 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 9007 WHERE t2.a=43 9008 ORDER BY x 9009 } 9010 } {43 27 45 17 28 3} 9011 do_test boundary3-2.47.lt.1 { 9012 db eval { 9013 SELECT t2.a FROM t1 JOIN t2 USING(a) 9014 WHERE t1.rowid < 562949953421312 ORDER BY t2.a 9015 } 9016 } {1 2 4 5 6 7 8 9 10 11 12 13 14 15 16 18 19 20 21 22 23 24 25 26 29 30 31 32 33 34 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64} 9017 do_test boundary3-2.47.lt.2 { 9018 db eval { 9019 SELECT t2.a FROM t2 NATURAL JOIN t1 9020 WHERE t1.rowid < 562949953421312 ORDER BY t1.a DESC 9021 } 9022 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 34 33 32 31 30 29 26 25 24 23 22 21 20 19 18 16 15 14 13 12 11 10 9 8 7 6 5 4 2 1} 9023 do_test boundary3-2.47.lt.3 { 9024 db eval { 9025 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 9026 WHERE t2.a=43 9027 ORDER BY t1.rowid 9028 } 9029 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13} 9030 do_test boundary3-2.47.lt.4 { 9031 db eval { 9032 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 9033 WHERE t2.a=43 9034 ORDER BY t1.rowid DESC 9035 } 9036 } {13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 9037 do_test boundary3-2.47.lt.5 { 9038 db eval { 9039 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 9040 WHERE t2.a=43 9041 ORDER BY x 9042 } 9043 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 9044 do_test boundary3-2.47.le.1 { 9045 db eval { 9046 SELECT t2.a FROM t1 JOIN t2 USING(a) 9047 WHERE t1.rowid <= 562949953421312 ORDER BY t2.a 9048 } 9049 } {1 2 4 5 6 7 8 9 10 11 12 13 14 15 16 18 19 20 21 22 23 24 25 26 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64} 9050 do_test boundary3-2.47.le.2 { 9051 db eval { 9052 SELECT t2.a FROM t2 NATURAL JOIN t1 9053 WHERE t1.rowid <= 562949953421312 ORDER BY t1.a DESC 9054 } 9055 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 26 25 24 23 22 21 20 19 18 16 15 14 13 12 11 10 9 8 7 6 5 4 2 1} 9056 do_test boundary3-2.47.le.3 { 9057 db eval { 9058 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 9059 WHERE t2.a=43 9060 ORDER BY t1.rowid 9061 } 9062 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43} 9063 do_test boundary3-2.47.le.4 { 9064 db eval { 9065 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 9066 WHERE t2.a=43 9067 ORDER BY t1.rowid DESC 9068 } 9069 } {43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 9070 do_test boundary3-2.47.le.5 { 9071 db eval { 9072 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 9073 WHERE t2.a=43 9074 ORDER BY x 9075 } 9076 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 9077 do_test boundary3-2.48.1 { 9078 db eval { 9079 SELECT t1.* FROM t1, t2 WHERE t1.rowid=-8388609 AND t2.a=t1.a 9080 } 9081 } {1 ffffffffff7fffff} 9082 do_test boundary3-2.48.2 { 9083 db eval { 9084 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='ffffffffff7fffff' 9085 } 9086 } {-8388609 1} 9087 do_test boundary3-2.48.3 { 9088 db eval { 9089 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=1 9090 } 9091 } {-8388609 ffffffffff7fffff} 9092 do_test boundary3-2.48.gt.1 { 9093 db eval { 9094 SELECT t2.a FROM t1 JOIN t2 USING(a) 9095 WHERE t1.rowid > -8388609 ORDER BY t2.a 9096 } 9097 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 45 46 48 49 50 51 52 53 54 56 57 59 60 61 62} 9098 do_test boundary3-2.48.gt.2 { 9099 db eval { 9100 SELECT t2.a FROM t2 NATURAL JOIN t1 9101 WHERE t1.rowid > -8388609 ORDER BY t1.a DESC 9102 } 9103 } {62 61 60 59 57 56 54 53 52 51 50 49 48 46 45 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 9104 do_test boundary3-2.48.gt.3 { 9105 db eval { 9106 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 9107 WHERE t2.a=1 9108 ORDER BY t1.rowid 9109 } 9110 } {37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9111 do_test boundary3-2.48.gt.4 { 9112 db eval { 9113 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 9114 WHERE t2.a=1 9115 ORDER BY t1.rowid DESC 9116 } 9117 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37} 9118 do_test boundary3-2.48.gt.5 { 9119 db eval { 9120 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 9121 WHERE t2.a=1 9122 ORDER BY x 9123 } 9124 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 37 29 32 54 53 52 33 38} 9125 do_test boundary3-2.48.gt.10 { 9126 db eval { 9127 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 9128 WHERE t2.a=1 9129 ORDER BY t1.rowid 9130 } 9131 } {37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9132 do_test boundary3-2.48.gt.11 { 9133 db eval { 9134 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 9135 WHERE t2.a=1 9136 ORDER BY t1.rowid DESC 9137 } 9138 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37} 9139 do_test boundary3-2.48.ge.1 { 9140 db eval { 9141 SELECT t2.a FROM t1 JOIN t2 USING(a) 9142 WHERE t1.rowid >= -8388609 ORDER BY t2.a 9143 } 9144 } {1 3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 45 46 48 49 50 51 52 53 54 56 57 59 60 61 62} 9145 do_test boundary3-2.48.ge.2 { 9146 db eval { 9147 SELECT t2.a FROM t2 NATURAL JOIN t1 9148 WHERE t1.rowid >= -8388609 ORDER BY t1.a DESC 9149 } 9150 } {62 61 60 59 57 56 54 53 52 51 50 49 48 46 45 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3 1} 9151 do_test boundary3-2.48.ge.3 { 9152 db eval { 9153 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 9154 WHERE t2.a=1 9155 ORDER BY t1.rowid 9156 } 9157 } {1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9158 do_test boundary3-2.48.ge.4 { 9159 db eval { 9160 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 9161 WHERE t2.a=1 9162 ORDER BY t1.rowid DESC 9163 } 9164 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1} 9165 do_test boundary3-2.48.ge.5 { 9166 db eval { 9167 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 9168 WHERE t2.a=1 9169 ORDER BY x 9170 } 9171 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 1 37 29 32 54 53 52 33 38} 9172 do_test boundary3-2.48.ge.10 { 9173 db eval { 9174 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 9175 WHERE t2.a=1 9176 ORDER BY t1.rowid 9177 } 9178 } {1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9179 do_test boundary3-2.48.ge.11 { 9180 db eval { 9181 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 9182 WHERE t2.a=1 9183 ORDER BY t1.rowid DESC 9184 } 9185 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1} 9186 do_test boundary3-2.48.lt.1 { 9187 db eval { 9188 SELECT t2.a FROM t1 JOIN t2 USING(a) 9189 WHERE t1.rowid < -8388609 ORDER BY t2.a 9190 } 9191 } {2 11 21 44 47 55 58 63 64} 9192 do_test boundary3-2.48.lt.2 { 9193 db eval { 9194 SELECT t2.a FROM t2 NATURAL JOIN t1 9195 WHERE t1.rowid < -8388609 ORDER BY t1.a DESC 9196 } 9197 } {64 63 58 55 47 44 21 11 2} 9198 do_test boundary3-2.48.lt.3 { 9199 db eval { 9200 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 9201 WHERE t2.a=1 9202 ORDER BY t1.rowid 9203 } 9204 } {55 2 64 21 44 58 63 47 11} 9205 do_test boundary3-2.48.lt.4 { 9206 db eval { 9207 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 9208 WHERE t2.a=1 9209 ORDER BY t1.rowid DESC 9210 } 9211 } {11 47 63 58 44 21 64 2 55} 9212 do_test boundary3-2.48.lt.5 { 9213 db eval { 9214 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 9215 WHERE t2.a=1 9216 ORDER BY x 9217 } 9218 } {55 2 64 21 44 58 63 47 11} 9219 do_test boundary3-2.48.lt.10 { 9220 db eval { 9221 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 9222 WHERE t2.a=1 9223 ORDER BY t1.rowid 9224 } 9225 } {55 2 64 21 44 58 63 47 11} 9226 do_test boundary3-2.48.lt.11 { 9227 db eval { 9228 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 9229 WHERE t2.a=1 9230 ORDER BY t1.rowid DESC 9231 } 9232 } {11 47 63 58 44 21 64 2 55} 9233 do_test boundary3-2.48.le.1 { 9234 db eval { 9235 SELECT t2.a FROM t1 JOIN t2 USING(a) 9236 WHERE t1.rowid <= -8388609 ORDER BY t2.a 9237 } 9238 } {1 2 11 21 44 47 55 58 63 64} 9239 do_test boundary3-2.48.le.2 { 9240 db eval { 9241 SELECT t2.a FROM t2 NATURAL JOIN t1 9242 WHERE t1.rowid <= -8388609 ORDER BY t1.a DESC 9243 } 9244 } {64 63 58 55 47 44 21 11 2 1} 9245 do_test boundary3-2.48.le.3 { 9246 db eval { 9247 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 9248 WHERE t2.a=1 9249 ORDER BY t1.rowid 9250 } 9251 } {55 2 64 21 44 58 63 47 11 1} 9252 do_test boundary3-2.48.le.4 { 9253 db eval { 9254 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 9255 WHERE t2.a=1 9256 ORDER BY t1.rowid DESC 9257 } 9258 } {1 11 47 63 58 44 21 64 2 55} 9259 do_test boundary3-2.48.le.5 { 9260 db eval { 9261 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 9262 WHERE t2.a=1 9263 ORDER BY x 9264 } 9265 } {55 2 64 21 44 58 63 47 11 1} 9266 do_test boundary3-2.48.le.10 { 9267 db eval { 9268 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 9269 WHERE t2.a=1 9270 ORDER BY t1.rowid 9271 } 9272 } {55 2 64 21 44 58 63 47 11 1} 9273 do_test boundary3-2.48.le.11 { 9274 db eval { 9275 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 9276 WHERE t2.a=1 9277 ORDER BY t1.rowid DESC 9278 } 9279 } {1 11 47 63 58 44 21 64 2 55} 9280 do_test boundary3-2.49.1 { 9281 db eval { 9282 SELECT t1.* FROM t1, t2 WHERE t1.rowid=16777215 AND t2.a=t1.a 9283 } 9284 } {9 0000000000ffffff} 9285 do_test boundary3-2.49.2 { 9286 db eval { 9287 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000000ffffff' 9288 } 9289 } {16777215 9} 9290 do_test boundary3-2.49.3 { 9291 db eval { 9292 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=9 9293 } 9294 } {16777215 0000000000ffffff} 9295 do_test boundary3-2.49.gt.1 { 9296 db eval { 9297 SELECT t2.a FROM t1 JOIN t2 USING(a) 9298 WHERE t1.rowid > 16777215 ORDER BY t2.a 9299 } 9300 } {3 6 7 10 12 13 14 17 19 20 22 25 26 27 28 34 35 36 39 40 43 45 46 51 56 57} 9301 do_test boundary3-2.49.gt.2 { 9302 db eval { 9303 SELECT t2.a FROM t2 NATURAL JOIN t1 9304 WHERE t1.rowid > 16777215 ORDER BY t1.a DESC 9305 } 9306 } {57 56 51 46 45 43 40 39 36 35 34 28 27 26 25 22 20 19 17 14 13 12 10 7 6 3} 9307 do_test boundary3-2.49.gt.3 { 9308 db eval { 9309 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 9310 WHERE t2.a=9 9311 ORDER BY t1.rowid 9312 } 9313 } {6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9314 do_test boundary3-2.49.gt.4 { 9315 db eval { 9316 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 9317 WHERE t2.a=9 9318 ORDER BY t1.rowid DESC 9319 } 9320 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6} 9321 do_test boundary3-2.49.gt.5 { 9322 db eval { 9323 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 9324 WHERE t2.a=9 9325 ORDER BY x 9326 } 9327 } {6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9328 do_test boundary3-2.49.gt.10 { 9329 db eval { 9330 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 9331 WHERE t2.a=9 9332 ORDER BY t1.rowid 9333 } 9334 } {6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9335 do_test boundary3-2.49.gt.11 { 9336 db eval { 9337 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 9338 WHERE t2.a=9 9339 ORDER BY t1.rowid DESC 9340 } 9341 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6} 9342 do_test boundary3-2.49.ge.1 { 9343 db eval { 9344 SELECT t2.a FROM t1 JOIN t2 USING(a) 9345 WHERE t1.rowid >= 16777215 ORDER BY t2.a 9346 } 9347 } {3 6 7 9 10 12 13 14 17 19 20 22 25 26 27 28 34 35 36 39 40 43 45 46 51 56 57} 9348 do_test boundary3-2.49.ge.2 { 9349 db eval { 9350 SELECT t2.a FROM t2 NATURAL JOIN t1 9351 WHERE t1.rowid >= 16777215 ORDER BY t1.a DESC 9352 } 9353 } {57 56 51 46 45 43 40 39 36 35 34 28 27 26 25 22 20 19 17 14 13 12 10 9 7 6 3} 9354 do_test boundary3-2.49.ge.3 { 9355 db eval { 9356 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 9357 WHERE t2.a=9 9358 ORDER BY t1.rowid 9359 } 9360 } {9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9361 do_test boundary3-2.49.ge.4 { 9362 db eval { 9363 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 9364 WHERE t2.a=9 9365 ORDER BY t1.rowid DESC 9366 } 9367 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9} 9368 do_test boundary3-2.49.ge.5 { 9369 db eval { 9370 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 9371 WHERE t2.a=9 9372 ORDER BY x 9373 } 9374 } {9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9375 do_test boundary3-2.49.ge.10 { 9376 db eval { 9377 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 9378 WHERE t2.a=9 9379 ORDER BY t1.rowid 9380 } 9381 } {9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9382 do_test boundary3-2.49.ge.11 { 9383 db eval { 9384 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 9385 WHERE t2.a=9 9386 ORDER BY t1.rowid DESC 9387 } 9388 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9} 9389 do_test boundary3-2.49.lt.1 { 9390 db eval { 9391 SELECT t2.a FROM t1 JOIN t2 USING(a) 9392 WHERE t1.rowid < 16777215 ORDER BY t2.a 9393 } 9394 } {1 2 4 5 8 11 15 16 18 21 23 24 29 30 31 32 33 37 38 41 42 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 9395 do_test boundary3-2.49.lt.2 { 9396 db eval { 9397 SELECT t2.a FROM t2 NATURAL JOIN t1 9398 WHERE t1.rowid < 16777215 ORDER BY t1.a DESC 9399 } 9400 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 42 41 38 37 33 32 31 30 29 24 23 21 18 16 15 11 8 5 4 2 1} 9401 do_test boundary3-2.49.lt.3 { 9402 db eval { 9403 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 9404 WHERE t2.a=9 9405 ORDER BY t1.rowid 9406 } 9407 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24} 9408 do_test boundary3-2.49.lt.4 { 9409 db eval { 9410 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 9411 WHERE t2.a=9 9412 ORDER BY t1.rowid DESC 9413 } 9414 } {24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 9415 do_test boundary3-2.49.lt.5 { 9416 db eval { 9417 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 9418 WHERE t2.a=9 9419 ORDER BY x 9420 } 9421 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 9422 do_test boundary3-2.49.lt.10 { 9423 db eval { 9424 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 9425 WHERE t2.a=9 9426 ORDER BY t1.rowid 9427 } 9428 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24} 9429 do_test boundary3-2.49.lt.11 { 9430 db eval { 9431 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 9432 WHERE t2.a=9 9433 ORDER BY t1.rowid DESC 9434 } 9435 } {24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 9436 do_test boundary3-2.49.le.1 { 9437 db eval { 9438 SELECT t2.a FROM t1 JOIN t2 USING(a) 9439 WHERE t1.rowid <= 16777215 ORDER BY t2.a 9440 } 9441 } {1 2 4 5 8 9 11 15 16 18 21 23 24 29 30 31 32 33 37 38 41 42 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 9442 do_test boundary3-2.49.le.2 { 9443 db eval { 9444 SELECT t2.a FROM t2 NATURAL JOIN t1 9445 WHERE t1.rowid <= 16777215 ORDER BY t1.a DESC 9446 } 9447 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 42 41 38 37 33 32 31 30 29 24 23 21 18 16 15 11 9 8 5 4 2 1} 9448 do_test boundary3-2.49.le.3 { 9449 db eval { 9450 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 9451 WHERE t2.a=9 9452 ORDER BY t1.rowid 9453 } 9454 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9} 9455 do_test boundary3-2.49.le.4 { 9456 db eval { 9457 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 9458 WHERE t2.a=9 9459 ORDER BY t1.rowid DESC 9460 } 9461 } {9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 9462 do_test boundary3-2.49.le.5 { 9463 db eval { 9464 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 9465 WHERE t2.a=9 9466 ORDER BY x 9467 } 9468 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 9469 do_test boundary3-2.49.le.10 { 9470 db eval { 9471 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 9472 WHERE t2.a=9 9473 ORDER BY t1.rowid 9474 } 9475 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9} 9476 do_test boundary3-2.49.le.11 { 9477 db eval { 9478 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 9479 WHERE t2.a=9 9480 ORDER BY t1.rowid DESC 9481 } 9482 } {9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 9483 do_test boundary3-2.50.1 { 9484 db eval { 9485 SELECT t1.* FROM t1, t2 WHERE t1.rowid=8388608 AND t2.a=t1.a 9486 } 9487 } {24 0000000000800000} 9488 do_test boundary3-2.50.2 { 9489 db eval { 9490 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000000800000' 9491 } 9492 } {8388608 24} 9493 do_test boundary3-2.50.3 { 9494 db eval { 9495 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=24 9496 } 9497 } {8388608 0000000000800000} 9498 do_test boundary3-2.50.gt.1 { 9499 db eval { 9500 SELECT t2.a FROM t1 JOIN t2 USING(a) 9501 WHERE t1.rowid > 8388608 ORDER BY t2.a 9502 } 9503 } {3 6 7 9 10 12 13 14 17 19 20 22 25 26 27 28 34 35 36 39 40 43 45 46 51 56 57} 9504 do_test boundary3-2.50.gt.2 { 9505 db eval { 9506 SELECT t2.a FROM t2 NATURAL JOIN t1 9507 WHERE t1.rowid > 8388608 ORDER BY t1.a DESC 9508 } 9509 } {57 56 51 46 45 43 40 39 36 35 34 28 27 26 25 22 20 19 17 14 13 12 10 9 7 6 3} 9510 do_test boundary3-2.50.gt.3 { 9511 db eval { 9512 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 9513 WHERE t2.a=24 9514 ORDER BY t1.rowid 9515 } 9516 } {9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9517 do_test boundary3-2.50.gt.4 { 9518 db eval { 9519 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 9520 WHERE t2.a=24 9521 ORDER BY t1.rowid DESC 9522 } 9523 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9} 9524 do_test boundary3-2.50.gt.5 { 9525 db eval { 9526 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 9527 WHERE t2.a=24 9528 ORDER BY x 9529 } 9530 } {9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9531 do_test boundary3-2.50.gt.10 { 9532 db eval { 9533 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 9534 WHERE t2.a=24 9535 ORDER BY t1.rowid 9536 } 9537 } {9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9538 do_test boundary3-2.50.gt.11 { 9539 db eval { 9540 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 9541 WHERE t2.a=24 9542 ORDER BY t1.rowid DESC 9543 } 9544 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9} 9545 do_test boundary3-2.50.ge.1 { 9546 db eval { 9547 SELECT t2.a FROM t1 JOIN t2 USING(a) 9548 WHERE t1.rowid >= 8388608 ORDER BY t2.a 9549 } 9550 } {3 6 7 9 10 12 13 14 17 19 20 22 24 25 26 27 28 34 35 36 39 40 43 45 46 51 56 57} 9551 do_test boundary3-2.50.ge.2 { 9552 db eval { 9553 SELECT t2.a FROM t2 NATURAL JOIN t1 9554 WHERE t1.rowid >= 8388608 ORDER BY t1.a DESC 9555 } 9556 } {57 56 51 46 45 43 40 39 36 35 34 28 27 26 25 24 22 20 19 17 14 13 12 10 9 7 6 3} 9557 do_test boundary3-2.50.ge.3 { 9558 db eval { 9559 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 9560 WHERE t2.a=24 9561 ORDER BY t1.rowid 9562 } 9563 } {24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9564 do_test boundary3-2.50.ge.4 { 9565 db eval { 9566 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 9567 WHERE t2.a=24 9568 ORDER BY t1.rowid DESC 9569 } 9570 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24} 9571 do_test boundary3-2.50.ge.5 { 9572 db eval { 9573 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 9574 WHERE t2.a=24 9575 ORDER BY x 9576 } 9577 } {24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9578 do_test boundary3-2.50.ge.10 { 9579 db eval { 9580 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 9581 WHERE t2.a=24 9582 ORDER BY t1.rowid 9583 } 9584 } {24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9585 do_test boundary3-2.50.ge.11 { 9586 db eval { 9587 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 9588 WHERE t2.a=24 9589 ORDER BY t1.rowid DESC 9590 } 9591 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24} 9592 do_test boundary3-2.50.lt.1 { 9593 db eval { 9594 SELECT t2.a FROM t1 JOIN t2 USING(a) 9595 WHERE t1.rowid < 8388608 ORDER BY t2.a 9596 } 9597 } {1 2 4 5 8 11 15 16 18 21 23 29 30 31 32 33 37 38 41 42 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 9598 do_test boundary3-2.50.lt.2 { 9599 db eval { 9600 SELECT t2.a FROM t2 NATURAL JOIN t1 9601 WHERE t1.rowid < 8388608 ORDER BY t1.a DESC 9602 } 9603 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 42 41 38 37 33 32 31 30 29 23 21 18 16 15 11 8 5 4 2 1} 9604 do_test boundary3-2.50.lt.3 { 9605 db eval { 9606 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 9607 WHERE t2.a=24 9608 ORDER BY t1.rowid 9609 } 9610 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18} 9611 do_test boundary3-2.50.lt.4 { 9612 db eval { 9613 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 9614 WHERE t2.a=24 9615 ORDER BY t1.rowid DESC 9616 } 9617 } {18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 9618 do_test boundary3-2.50.lt.5 { 9619 db eval { 9620 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 9621 WHERE t2.a=24 9622 ORDER BY x 9623 } 9624 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 9625 do_test boundary3-2.50.lt.10 { 9626 db eval { 9627 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 9628 WHERE t2.a=24 9629 ORDER BY t1.rowid 9630 } 9631 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18} 9632 do_test boundary3-2.50.lt.11 { 9633 db eval { 9634 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 9635 WHERE t2.a=24 9636 ORDER BY t1.rowid DESC 9637 } 9638 } {18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 9639 do_test boundary3-2.50.le.1 { 9640 db eval { 9641 SELECT t2.a FROM t1 JOIN t2 USING(a) 9642 WHERE t1.rowid <= 8388608 ORDER BY t2.a 9643 } 9644 } {1 2 4 5 8 11 15 16 18 21 23 24 29 30 31 32 33 37 38 41 42 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 9645 do_test boundary3-2.50.le.2 { 9646 db eval { 9647 SELECT t2.a FROM t2 NATURAL JOIN t1 9648 WHERE t1.rowid <= 8388608 ORDER BY t1.a DESC 9649 } 9650 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 42 41 38 37 33 32 31 30 29 24 23 21 18 16 15 11 8 5 4 2 1} 9651 do_test boundary3-2.50.le.3 { 9652 db eval { 9653 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 9654 WHERE t2.a=24 9655 ORDER BY t1.rowid 9656 } 9657 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24} 9658 do_test boundary3-2.50.le.4 { 9659 db eval { 9660 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 9661 WHERE t2.a=24 9662 ORDER BY t1.rowid DESC 9663 } 9664 } {24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 9665 do_test boundary3-2.50.le.5 { 9666 db eval { 9667 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 9668 WHERE t2.a=24 9669 ORDER BY x 9670 } 9671 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 9672 do_test boundary3-2.50.le.10 { 9673 db eval { 9674 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 9675 WHERE t2.a=24 9676 ORDER BY t1.rowid 9677 } 9678 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24} 9679 do_test boundary3-2.50.le.11 { 9680 db eval { 9681 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 9682 WHERE t2.a=24 9683 ORDER BY t1.rowid DESC 9684 } 9685 } {24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 9686 do_test boundary3-2.51.1 { 9687 db eval { 9688 SELECT t1.* FROM t1, t2 WHERE t1.rowid=16383 AND t2.a=t1.a 9689 } 9690 } {8 0000000000003fff} 9691 do_test boundary3-2.51.2 { 9692 db eval { 9693 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000000003fff' 9694 } 9695 } {16383 8} 9696 do_test boundary3-2.51.3 { 9697 db eval { 9698 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=8 9699 } 9700 } {16383 0000000000003fff} 9701 do_test boundary3-2.51.gt.1 { 9702 db eval { 9703 SELECT t2.a FROM t1 JOIN t2 USING(a) 9704 WHERE t1.rowid > 16383 ORDER BY t2.a 9705 } 9706 } {3 6 7 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 34 35 36 39 40 42 43 45 46 48 50 51 56 57 62} 9707 do_test boundary3-2.51.gt.2 { 9708 db eval { 9709 SELECT t2.a FROM t2 NATURAL JOIN t1 9710 WHERE t1.rowid > 16383 ORDER BY t1.a DESC 9711 } 9712 } {62 57 56 51 50 48 46 45 43 42 40 39 36 35 34 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 7 6 3} 9713 do_test boundary3-2.51.gt.3 { 9714 db eval { 9715 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 9716 WHERE t2.a=8 9717 ORDER BY t1.rowid 9718 } 9719 } {16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9720 do_test boundary3-2.51.gt.4 { 9721 db eval { 9722 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 9723 WHERE t2.a=8 9724 ORDER BY t1.rowid DESC 9725 } 9726 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16} 9727 do_test boundary3-2.51.gt.5 { 9728 db eval { 9729 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 9730 WHERE t2.a=8 9731 ORDER BY x 9732 } 9733 } {16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9734 do_test boundary3-2.51.gt.10 { 9735 db eval { 9736 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 9737 WHERE t2.a=8 9738 ORDER BY t1.rowid 9739 } 9740 } {16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9741 do_test boundary3-2.51.gt.11 { 9742 db eval { 9743 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 9744 WHERE t2.a=8 9745 ORDER BY t1.rowid DESC 9746 } 9747 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16} 9748 do_test boundary3-2.51.ge.1 { 9749 db eval { 9750 SELECT t2.a FROM t1 JOIN t2 USING(a) 9751 WHERE t1.rowid >= 16383 ORDER BY t2.a 9752 } 9753 } {3 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 34 35 36 39 40 42 43 45 46 48 50 51 56 57 62} 9754 do_test boundary3-2.51.ge.2 { 9755 db eval { 9756 SELECT t2.a FROM t2 NATURAL JOIN t1 9757 WHERE t1.rowid >= 16383 ORDER BY t1.a DESC 9758 } 9759 } {62 57 56 51 50 48 46 45 43 42 40 39 36 35 34 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 3} 9760 do_test boundary3-2.51.ge.3 { 9761 db eval { 9762 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 9763 WHERE t2.a=8 9764 ORDER BY t1.rowid 9765 } 9766 } {8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9767 do_test boundary3-2.51.ge.4 { 9768 db eval { 9769 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 9770 WHERE t2.a=8 9771 ORDER BY t1.rowid DESC 9772 } 9773 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8} 9774 do_test boundary3-2.51.ge.5 { 9775 db eval { 9776 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 9777 WHERE t2.a=8 9778 ORDER BY x 9779 } 9780 } {8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9781 do_test boundary3-2.51.ge.10 { 9782 db eval { 9783 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 9784 WHERE t2.a=8 9785 ORDER BY t1.rowid 9786 } 9787 } {8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 9788 do_test boundary3-2.51.ge.11 { 9789 db eval { 9790 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 9791 WHERE t2.a=8 9792 ORDER BY t1.rowid DESC 9793 } 9794 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8} 9795 do_test boundary3-2.51.lt.1 { 9796 db eval { 9797 SELECT t2.a FROM t1 JOIN t2 USING(a) 9798 WHERE t1.rowid < 16383 ORDER BY t2.a 9799 } 9800 } {1 2 4 5 11 21 29 30 31 32 33 37 38 41 44 47 49 52 53 54 55 58 59 60 61 63 64} 9801 do_test boundary3-2.51.lt.2 { 9802 db eval { 9803 SELECT t2.a FROM t2 NATURAL JOIN t1 9804 WHERE t1.rowid < 16383 ORDER BY t1.a DESC 9805 } 9806 } {64 63 61 60 59 58 55 54 53 52 49 47 44 41 38 37 33 32 31 30 29 21 11 5 4 2 1} 9807 do_test boundary3-2.51.lt.3 { 9808 db eval { 9809 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 9810 WHERE t2.a=8 9811 ORDER BY t1.rowid 9812 } 9813 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61} 9814 do_test boundary3-2.51.lt.4 { 9815 db eval { 9816 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 9817 WHERE t2.a=8 9818 ORDER BY t1.rowid DESC 9819 } 9820 } {61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 9821 do_test boundary3-2.51.lt.5 { 9822 db eval { 9823 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 9824 WHERE t2.a=8 9825 ORDER BY x 9826 } 9827 } {59 60 41 5 31 4 49 30 61 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 9828 do_test boundary3-2.51.lt.10 { 9829 db eval { 9830 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 9831 WHERE t2.a=8 9832 ORDER BY t1.rowid 9833 } 9834 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61} 9835 do_test boundary3-2.51.lt.11 { 9836 db eval { 9837 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 9838 WHERE t2.a=8 9839 ORDER BY t1.rowid DESC 9840 } 9841 } {61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 9842 do_test boundary3-2.51.le.1 { 9843 db eval { 9844 SELECT t2.a FROM t1 JOIN t2 USING(a) 9845 WHERE t1.rowid <= 16383 ORDER BY t2.a 9846 } 9847 } {1 2 4 5 8 11 21 29 30 31 32 33 37 38 41 44 47 49 52 53 54 55 58 59 60 61 63 64} 9848 do_test boundary3-2.51.le.2 { 9849 db eval { 9850 SELECT t2.a FROM t2 NATURAL JOIN t1 9851 WHERE t1.rowid <= 16383 ORDER BY t1.a DESC 9852 } 9853 } {64 63 61 60 59 58 55 54 53 52 49 47 44 41 38 37 33 32 31 30 29 21 11 8 5 4 2 1} 9854 do_test boundary3-2.51.le.3 { 9855 db eval { 9856 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 9857 WHERE t2.a=8 9858 ORDER BY t1.rowid 9859 } 9860 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8} 9861 do_test boundary3-2.51.le.4 { 9862 db eval { 9863 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 9864 WHERE t2.a=8 9865 ORDER BY t1.rowid DESC 9866 } 9867 } {8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 9868 do_test boundary3-2.51.le.5 { 9869 db eval { 9870 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 9871 WHERE t2.a=8 9872 ORDER BY x 9873 } 9874 } {59 60 41 5 31 4 49 30 61 8 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 9875 do_test boundary3-2.51.le.10 { 9876 db eval { 9877 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 9878 WHERE t2.a=8 9879 ORDER BY t1.rowid 9880 } 9881 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8} 9882 do_test boundary3-2.51.le.11 { 9883 db eval { 9884 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 9885 WHERE t2.a=8 9886 ORDER BY t1.rowid DESC 9887 } 9888 } {8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 9889 do_test boundary3-2.52.1 { 9890 db eval { 9891 SELECT t1.* FROM t1, t2 WHERE t1.rowid=140737488355328 AND t2.a=t1.a 9892 } 9893 } {34 0000800000000000} 9894 do_test boundary3-2.52.2 { 9895 db eval { 9896 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000800000000000' 9897 } 9898 } {140737488355328 34} 9899 do_test boundary3-2.52.3 { 9900 db eval { 9901 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=34 9902 } 9903 } {140737488355328 0000800000000000} 9904 do_test boundary3-2.52.gt.1 { 9905 db eval { 9906 SELECT t2.a FROM t1 JOIN t2 USING(a) 9907 WHERE t1.rowid > 140737488355328 ORDER BY t2.a 9908 } 9909 } {3 10 13 17 26 27 28 43 45} 9910 do_test boundary3-2.52.gt.2 { 9911 db eval { 9912 SELECT t2.a FROM t2 NATURAL JOIN t1 9913 WHERE t1.rowid > 140737488355328 ORDER BY t1.a DESC 9914 } 9915 } {45 43 28 27 26 17 13 10 3} 9916 do_test boundary3-2.52.gt.3 { 9917 db eval { 9918 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 9919 WHERE t2.a=34 9920 ORDER BY t1.rowid 9921 } 9922 } {10 26 13 43 27 45 17 28 3} 9923 do_test boundary3-2.52.gt.4 { 9924 db eval { 9925 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 9926 WHERE t2.a=34 9927 ORDER BY t1.rowid DESC 9928 } 9929 } {3 28 17 45 27 43 13 26 10} 9930 do_test boundary3-2.52.gt.5 { 9931 db eval { 9932 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 9933 WHERE t2.a=34 9934 ORDER BY x 9935 } 9936 } {10 26 13 43 27 45 17 28 3} 9937 do_test boundary3-2.52.ge.1 { 9938 db eval { 9939 SELECT t2.a FROM t1 JOIN t2 USING(a) 9940 WHERE t1.rowid >= 140737488355328 ORDER BY t2.a 9941 } 9942 } {3 10 13 17 26 27 28 34 43 45} 9943 do_test boundary3-2.52.ge.2 { 9944 db eval { 9945 SELECT t2.a FROM t2 NATURAL JOIN t1 9946 WHERE t1.rowid >= 140737488355328 ORDER BY t1.a DESC 9947 } 9948 } {45 43 34 28 27 26 17 13 10 3} 9949 do_test boundary3-2.52.ge.3 { 9950 db eval { 9951 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 9952 WHERE t2.a=34 9953 ORDER BY t1.rowid 9954 } 9955 } {34 10 26 13 43 27 45 17 28 3} 9956 do_test boundary3-2.52.ge.4 { 9957 db eval { 9958 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 9959 WHERE t2.a=34 9960 ORDER BY t1.rowid DESC 9961 } 9962 } {3 28 17 45 27 43 13 26 10 34} 9963 do_test boundary3-2.52.ge.5 { 9964 db eval { 9965 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 9966 WHERE t2.a=34 9967 ORDER BY x 9968 } 9969 } {34 10 26 13 43 27 45 17 28 3} 9970 do_test boundary3-2.52.lt.1 { 9971 db eval { 9972 SELECT t2.a FROM t1 JOIN t2 USING(a) 9973 WHERE t1.rowid < 140737488355328 ORDER BY t2.a 9974 } 9975 } {1 2 4 5 6 7 8 9 11 12 14 15 16 18 19 20 21 22 23 24 25 29 30 31 32 33 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64} 9976 do_test boundary3-2.52.lt.2 { 9977 db eval { 9978 SELECT t2.a FROM t2 NATURAL JOIN t1 9979 WHERE t1.rowid < 140737488355328 ORDER BY t1.a DESC 9980 } 9981 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 33 32 31 30 29 25 24 23 22 21 20 19 18 16 15 14 12 11 9 8 7 6 5 4 2 1} 9982 do_test boundary3-2.52.lt.3 { 9983 db eval { 9984 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 9985 WHERE t2.a=34 9986 ORDER BY t1.rowid 9987 } 9988 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25} 9989 do_test boundary3-2.52.lt.4 { 9990 db eval { 9991 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 9992 WHERE t2.a=34 9993 ORDER BY t1.rowid DESC 9994 } 9995 } {25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 9996 do_test boundary3-2.52.lt.5 { 9997 db eval { 9998 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 9999 WHERE t2.a=34 10000 ORDER BY x 10001 } 10002 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 10003 do_test boundary3-2.52.le.1 { 10004 db eval { 10005 SELECT t2.a FROM t1 JOIN t2 USING(a) 10006 WHERE t1.rowid <= 140737488355328 ORDER BY t2.a 10007 } 10008 } {1 2 4 5 6 7 8 9 11 12 14 15 16 18 19 20 21 22 23 24 25 29 30 31 32 33 34 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64} 10009 do_test boundary3-2.52.le.2 { 10010 db eval { 10011 SELECT t2.a FROM t2 NATURAL JOIN t1 10012 WHERE t1.rowid <= 140737488355328 ORDER BY t1.a DESC 10013 } 10014 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 34 33 32 31 30 29 25 24 23 22 21 20 19 18 16 15 14 12 11 9 8 7 6 5 4 2 1} 10015 do_test boundary3-2.52.le.3 { 10016 db eval { 10017 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 10018 WHERE t2.a=34 10019 ORDER BY t1.rowid 10020 } 10021 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34} 10022 do_test boundary3-2.52.le.4 { 10023 db eval { 10024 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 10025 WHERE t2.a=34 10026 ORDER BY t1.rowid DESC 10027 } 10028 } {34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 10029 do_test boundary3-2.52.le.5 { 10030 db eval { 10031 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 10032 WHERE t2.a=34 10033 ORDER BY x 10034 } 10035 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 10036 do_test boundary3-2.53.1 { 10037 db eval { 10038 SELECT t1.* FROM t1, t2 WHERE t1.rowid=2097151 AND t2.a=t1.a 10039 } 10040 } {15 00000000001fffff} 10041 do_test boundary3-2.53.2 { 10042 db eval { 10043 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='00000000001fffff' 10044 } 10045 } {2097151 15} 10046 do_test boundary3-2.53.3 { 10047 db eval { 10048 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=15 10049 } 10050 } {2097151 00000000001fffff} 10051 do_test boundary3-2.53.gt.1 { 10052 db eval { 10053 SELECT t2.a FROM t1 JOIN t2 USING(a) 10054 WHERE t1.rowid > 2097151 ORDER BY t2.a 10055 } 10056 } {3 6 7 9 10 12 13 14 17 18 19 20 22 24 25 26 27 28 34 35 36 39 40 42 43 45 46 51 56 57} 10057 do_test boundary3-2.53.gt.2 { 10058 db eval { 10059 SELECT t2.a FROM t2 NATURAL JOIN t1 10060 WHERE t1.rowid > 2097151 ORDER BY t1.a DESC 10061 } 10062 } {57 56 51 46 45 43 42 40 39 36 35 34 28 27 26 25 24 22 20 19 18 17 14 13 12 10 9 7 6 3} 10063 do_test boundary3-2.53.gt.3 { 10064 db eval { 10065 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 10066 WHERE t2.a=15 10067 ORDER BY t1.rowid 10068 } 10069 } {42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 10070 do_test boundary3-2.53.gt.4 { 10071 db eval { 10072 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 10073 WHERE t2.a=15 10074 ORDER BY t1.rowid DESC 10075 } 10076 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42} 10077 do_test boundary3-2.53.gt.5 { 10078 db eval { 10079 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 10080 WHERE t2.a=15 10081 ORDER BY x 10082 } 10083 } {42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 10084 do_test boundary3-2.53.gt.10 { 10085 db eval { 10086 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 10087 WHERE t2.a=15 10088 ORDER BY t1.rowid 10089 } 10090 } {42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 10091 do_test boundary3-2.53.gt.11 { 10092 db eval { 10093 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 10094 WHERE t2.a=15 10095 ORDER BY t1.rowid DESC 10096 } 10097 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42} 10098 do_test boundary3-2.53.ge.1 { 10099 db eval { 10100 SELECT t2.a FROM t1 JOIN t2 USING(a) 10101 WHERE t1.rowid >= 2097151 ORDER BY t2.a 10102 } 10103 } {3 6 7 9 10 12 13 14 15 17 18 19 20 22 24 25 26 27 28 34 35 36 39 40 42 43 45 46 51 56 57} 10104 do_test boundary3-2.53.ge.2 { 10105 db eval { 10106 SELECT t2.a FROM t2 NATURAL JOIN t1 10107 WHERE t1.rowid >= 2097151 ORDER BY t1.a DESC 10108 } 10109 } {57 56 51 46 45 43 42 40 39 36 35 34 28 27 26 25 24 22 20 19 18 17 15 14 13 12 10 9 7 6 3} 10110 do_test boundary3-2.53.ge.3 { 10111 db eval { 10112 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 10113 WHERE t2.a=15 10114 ORDER BY t1.rowid 10115 } 10116 } {15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 10117 do_test boundary3-2.53.ge.4 { 10118 db eval { 10119 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 10120 WHERE t2.a=15 10121 ORDER BY t1.rowid DESC 10122 } 10123 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15} 10124 do_test boundary3-2.53.ge.5 { 10125 db eval { 10126 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 10127 WHERE t2.a=15 10128 ORDER BY x 10129 } 10130 } {15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 10131 do_test boundary3-2.53.ge.10 { 10132 db eval { 10133 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 10134 WHERE t2.a=15 10135 ORDER BY t1.rowid 10136 } 10137 } {15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 10138 do_test boundary3-2.53.ge.11 { 10139 db eval { 10140 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 10141 WHERE t2.a=15 10142 ORDER BY t1.rowid DESC 10143 } 10144 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15} 10145 do_test boundary3-2.53.lt.1 { 10146 db eval { 10147 SELECT t2.a FROM t1 JOIN t2 USING(a) 10148 WHERE t1.rowid < 2097151 ORDER BY t2.a 10149 } 10150 } {1 2 4 5 8 11 16 21 23 29 30 31 32 33 37 38 41 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 10151 do_test boundary3-2.53.lt.2 { 10152 db eval { 10153 SELECT t2.a FROM t2 NATURAL JOIN t1 10154 WHERE t1.rowid < 2097151 ORDER BY t1.a DESC 10155 } 10156 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 41 38 37 33 32 31 30 29 23 21 16 11 8 5 4 2 1} 10157 do_test boundary3-2.53.lt.3 { 10158 db eval { 10159 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 10160 WHERE t2.a=15 10161 ORDER BY t1.rowid 10162 } 10163 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62} 10164 do_test boundary3-2.53.lt.4 { 10165 db eval { 10166 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 10167 WHERE t2.a=15 10168 ORDER BY t1.rowid DESC 10169 } 10170 } {62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 10171 do_test boundary3-2.53.lt.5 { 10172 db eval { 10173 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 10174 WHERE t2.a=15 10175 ORDER BY x 10176 } 10177 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 10178 do_test boundary3-2.53.lt.10 { 10179 db eval { 10180 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 10181 WHERE t2.a=15 10182 ORDER BY t1.rowid 10183 } 10184 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62} 10185 do_test boundary3-2.53.lt.11 { 10186 db eval { 10187 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 10188 WHERE t2.a=15 10189 ORDER BY t1.rowid DESC 10190 } 10191 } {62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 10192 do_test boundary3-2.53.le.1 { 10193 db eval { 10194 SELECT t2.a FROM t1 JOIN t2 USING(a) 10195 WHERE t1.rowid <= 2097151 ORDER BY t2.a 10196 } 10197 } {1 2 4 5 8 11 15 16 21 23 29 30 31 32 33 37 38 41 44 47 48 49 50 52 53 54 55 58 59 60 61 62 63 64} 10198 do_test boundary3-2.53.le.2 { 10199 db eval { 10200 SELECT t2.a FROM t2 NATURAL JOIN t1 10201 WHERE t1.rowid <= 2097151 ORDER BY t1.a DESC 10202 } 10203 } {64 63 62 61 60 59 58 55 54 53 52 50 49 48 47 44 41 38 37 33 32 31 30 29 23 21 16 15 11 8 5 4 2 1} 10204 do_test boundary3-2.53.le.3 { 10205 db eval { 10206 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 10207 WHERE t2.a=15 10208 ORDER BY t1.rowid 10209 } 10210 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15} 10211 do_test boundary3-2.53.le.4 { 10212 db eval { 10213 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 10214 WHERE t2.a=15 10215 ORDER BY t1.rowid DESC 10216 } 10217 } {15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 10218 do_test boundary3-2.53.le.5 { 10219 db eval { 10220 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 10221 WHERE t2.a=15 10222 ORDER BY x 10223 } 10224 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 10225 do_test boundary3-2.53.le.10 { 10226 db eval { 10227 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 10228 WHERE t2.a=15 10229 ORDER BY t1.rowid 10230 } 10231 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15} 10232 do_test boundary3-2.53.le.11 { 10233 db eval { 10234 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 10235 WHERE t2.a=15 10236 ORDER BY t1.rowid DESC 10237 } 10238 } {15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 10239 do_test boundary3-2.54.1 { 10240 db eval { 10241 SELECT t1.* FROM t1, t2 WHERE t1.rowid=140737488355327 AND t2.a=t1.a 10242 } 10243 } {25 00007fffffffffff} 10244 do_test boundary3-2.54.2 { 10245 db eval { 10246 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='00007fffffffffff' 10247 } 10248 } {140737488355327 25} 10249 do_test boundary3-2.54.3 { 10250 db eval { 10251 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=25 10252 } 10253 } {140737488355327 00007fffffffffff} 10254 do_test boundary3-2.54.gt.1 { 10255 db eval { 10256 SELECT t2.a FROM t1 JOIN t2 USING(a) 10257 WHERE t1.rowid > 140737488355327 ORDER BY t2.a 10258 } 10259 } {3 10 13 17 26 27 28 34 43 45} 10260 do_test boundary3-2.54.gt.2 { 10261 db eval { 10262 SELECT t2.a FROM t2 NATURAL JOIN t1 10263 WHERE t1.rowid > 140737488355327 ORDER BY t1.a DESC 10264 } 10265 } {45 43 34 28 27 26 17 13 10 3} 10266 do_test boundary3-2.54.gt.3 { 10267 db eval { 10268 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 10269 WHERE t2.a=25 10270 ORDER BY t1.rowid 10271 } 10272 } {34 10 26 13 43 27 45 17 28 3} 10273 do_test boundary3-2.54.gt.4 { 10274 db eval { 10275 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 10276 WHERE t2.a=25 10277 ORDER BY t1.rowid DESC 10278 } 10279 } {3 28 17 45 27 43 13 26 10 34} 10280 do_test boundary3-2.54.gt.5 { 10281 db eval { 10282 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 10283 WHERE t2.a=25 10284 ORDER BY x 10285 } 10286 } {34 10 26 13 43 27 45 17 28 3} 10287 do_test boundary3-2.54.ge.1 { 10288 db eval { 10289 SELECT t2.a FROM t1 JOIN t2 USING(a) 10290 WHERE t1.rowid >= 140737488355327 ORDER BY t2.a 10291 } 10292 } {3 10 13 17 25 26 27 28 34 43 45} 10293 do_test boundary3-2.54.ge.2 { 10294 db eval { 10295 SELECT t2.a FROM t2 NATURAL JOIN t1 10296 WHERE t1.rowid >= 140737488355327 ORDER BY t1.a DESC 10297 } 10298 } {45 43 34 28 27 26 25 17 13 10 3} 10299 do_test boundary3-2.54.ge.3 { 10300 db eval { 10301 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 10302 WHERE t2.a=25 10303 ORDER BY t1.rowid 10304 } 10305 } {25 34 10 26 13 43 27 45 17 28 3} 10306 do_test boundary3-2.54.ge.4 { 10307 db eval { 10308 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 10309 WHERE t2.a=25 10310 ORDER BY t1.rowid DESC 10311 } 10312 } {3 28 17 45 27 43 13 26 10 34 25} 10313 do_test boundary3-2.54.ge.5 { 10314 db eval { 10315 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 10316 WHERE t2.a=25 10317 ORDER BY x 10318 } 10319 } {25 34 10 26 13 43 27 45 17 28 3} 10320 do_test boundary3-2.54.lt.1 { 10321 db eval { 10322 SELECT t2.a FROM t1 JOIN t2 USING(a) 10323 WHERE t1.rowid < 140737488355327 ORDER BY t2.a 10324 } 10325 } {1 2 4 5 6 7 8 9 11 12 14 15 16 18 19 20 21 22 23 24 29 30 31 32 33 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64} 10326 do_test boundary3-2.54.lt.2 { 10327 db eval { 10328 SELECT t2.a FROM t2 NATURAL JOIN t1 10329 WHERE t1.rowid < 140737488355327 ORDER BY t1.a DESC 10330 } 10331 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 33 32 31 30 29 24 23 22 21 20 19 18 16 15 14 12 11 9 8 7 6 5 4 2 1} 10332 do_test boundary3-2.54.lt.3 { 10333 db eval { 10334 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 10335 WHERE t2.a=25 10336 ORDER BY t1.rowid 10337 } 10338 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56} 10339 do_test boundary3-2.54.lt.4 { 10340 db eval { 10341 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 10342 WHERE t2.a=25 10343 ORDER BY t1.rowid DESC 10344 } 10345 } {56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 10346 do_test boundary3-2.54.lt.5 { 10347 db eval { 10348 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 10349 WHERE t2.a=25 10350 ORDER BY x 10351 } 10352 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 10353 do_test boundary3-2.54.le.1 { 10354 db eval { 10355 SELECT t2.a FROM t1 JOIN t2 USING(a) 10356 WHERE t1.rowid <= 140737488355327 ORDER BY t2.a 10357 } 10358 } {1 2 4 5 6 7 8 9 11 12 14 15 16 18 19 20 21 22 23 24 25 29 30 31 32 33 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64} 10359 do_test boundary3-2.54.le.2 { 10360 db eval { 10361 SELECT t2.a FROM t2 NATURAL JOIN t1 10362 WHERE t1.rowid <= 140737488355327 ORDER BY t1.a DESC 10363 } 10364 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 33 32 31 30 29 25 24 23 22 21 20 19 18 16 15 14 12 11 9 8 7 6 5 4 2 1} 10365 do_test boundary3-2.54.le.3 { 10366 db eval { 10367 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 10368 WHERE t2.a=25 10369 ORDER BY t1.rowid 10370 } 10371 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25} 10372 do_test boundary3-2.54.le.4 { 10373 db eval { 10374 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 10375 WHERE t2.a=25 10376 ORDER BY t1.rowid DESC 10377 } 10378 } {25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 10379 do_test boundary3-2.54.le.5 { 10380 db eval { 10381 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 10382 WHERE t2.a=25 10383 ORDER BY x 10384 } 10385 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 10386 do_test boundary3-2.55.1 { 10387 db eval { 10388 SELECT t1.* FROM t1, t2 WHERE t1.rowid=281474976710656 AND t2.a=t1.a 10389 } 10390 } {26 0001000000000000} 10391 do_test boundary3-2.55.2 { 10392 db eval { 10393 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0001000000000000' 10394 } 10395 } {281474976710656 26} 10396 do_test boundary3-2.55.3 { 10397 db eval { 10398 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=26 10399 } 10400 } {281474976710656 0001000000000000} 10401 do_test boundary3-2.55.gt.1 { 10402 db eval { 10403 SELECT t2.a FROM t1 JOIN t2 USING(a) 10404 WHERE t1.rowid > 281474976710656 ORDER BY t2.a 10405 } 10406 } {3 13 17 27 28 43 45} 10407 do_test boundary3-2.55.gt.2 { 10408 db eval { 10409 SELECT t2.a FROM t2 NATURAL JOIN t1 10410 WHERE t1.rowid > 281474976710656 ORDER BY t1.a DESC 10411 } 10412 } {45 43 28 27 17 13 3} 10413 do_test boundary3-2.55.gt.3 { 10414 db eval { 10415 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 10416 WHERE t2.a=26 10417 ORDER BY t1.rowid 10418 } 10419 } {13 43 27 45 17 28 3} 10420 do_test boundary3-2.55.gt.4 { 10421 db eval { 10422 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 10423 WHERE t2.a=26 10424 ORDER BY t1.rowid DESC 10425 } 10426 } {3 28 17 45 27 43 13} 10427 do_test boundary3-2.55.gt.5 { 10428 db eval { 10429 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 10430 WHERE t2.a=26 10431 ORDER BY x 10432 } 10433 } {13 43 27 45 17 28 3} 10434 do_test boundary3-2.55.ge.1 { 10435 db eval { 10436 SELECT t2.a FROM t1 JOIN t2 USING(a) 10437 WHERE t1.rowid >= 281474976710656 ORDER BY t2.a 10438 } 10439 } {3 13 17 26 27 28 43 45} 10440 do_test boundary3-2.55.ge.2 { 10441 db eval { 10442 SELECT t2.a FROM t2 NATURAL JOIN t1 10443 WHERE t1.rowid >= 281474976710656 ORDER BY t1.a DESC 10444 } 10445 } {45 43 28 27 26 17 13 3} 10446 do_test boundary3-2.55.ge.3 { 10447 db eval { 10448 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 10449 WHERE t2.a=26 10450 ORDER BY t1.rowid 10451 } 10452 } {26 13 43 27 45 17 28 3} 10453 do_test boundary3-2.55.ge.4 { 10454 db eval { 10455 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 10456 WHERE t2.a=26 10457 ORDER BY t1.rowid DESC 10458 } 10459 } {3 28 17 45 27 43 13 26} 10460 do_test boundary3-2.55.ge.5 { 10461 db eval { 10462 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 10463 WHERE t2.a=26 10464 ORDER BY x 10465 } 10466 } {26 13 43 27 45 17 28 3} 10467 do_test boundary3-2.55.lt.1 { 10468 db eval { 10469 SELECT t2.a FROM t1 JOIN t2 USING(a) 10470 WHERE t1.rowid < 281474976710656 ORDER BY t2.a 10471 } 10472 } {1 2 4 5 6 7 8 9 10 11 12 14 15 16 18 19 20 21 22 23 24 25 29 30 31 32 33 34 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64} 10473 do_test boundary3-2.55.lt.2 { 10474 db eval { 10475 SELECT t2.a FROM t2 NATURAL JOIN t1 10476 WHERE t1.rowid < 281474976710656 ORDER BY t1.a DESC 10477 } 10478 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 34 33 32 31 30 29 25 24 23 22 21 20 19 18 16 15 14 12 11 10 9 8 7 6 5 4 2 1} 10479 do_test boundary3-2.55.lt.3 { 10480 db eval { 10481 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 10482 WHERE t2.a=26 10483 ORDER BY t1.rowid 10484 } 10485 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10} 10486 do_test boundary3-2.55.lt.4 { 10487 db eval { 10488 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 10489 WHERE t2.a=26 10490 ORDER BY t1.rowid DESC 10491 } 10492 } {10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 10493 do_test boundary3-2.55.lt.5 { 10494 db eval { 10495 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 10496 WHERE t2.a=26 10497 ORDER BY x 10498 } 10499 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 10500 do_test boundary3-2.55.le.1 { 10501 db eval { 10502 SELECT t2.a FROM t1 JOIN t2 USING(a) 10503 WHERE t1.rowid <= 281474976710656 ORDER BY t2.a 10504 } 10505 } {1 2 4 5 6 7 8 9 10 11 12 14 15 16 18 19 20 21 22 23 24 25 26 29 30 31 32 33 34 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64} 10506 do_test boundary3-2.55.le.2 { 10507 db eval { 10508 SELECT t2.a FROM t2 NATURAL JOIN t1 10509 WHERE t1.rowid <= 281474976710656 ORDER BY t1.a DESC 10510 } 10511 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 34 33 32 31 30 29 26 25 24 23 22 21 20 19 18 16 15 14 12 11 10 9 8 7 6 5 4 2 1} 10512 do_test boundary3-2.55.le.3 { 10513 db eval { 10514 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 10515 WHERE t2.a=26 10516 ORDER BY t1.rowid 10517 } 10518 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26} 10519 do_test boundary3-2.55.le.4 { 10520 db eval { 10521 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 10522 WHERE t2.a=26 10523 ORDER BY t1.rowid DESC 10524 } 10525 } {26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 10526 do_test boundary3-2.55.le.5 { 10527 db eval { 10528 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 10529 WHERE t2.a=26 10530 ORDER BY x 10531 } 10532 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 10533 do_test boundary3-2.56.1 { 10534 db eval { 10535 SELECT t1.* FROM t1, t2 WHERE t1.rowid=32767 AND t2.a=t1.a 10536 } 10537 } {23 0000000000007fff} 10538 do_test boundary3-2.56.2 { 10539 db eval { 10540 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000000007fff' 10541 } 10542 } {32767 23} 10543 do_test boundary3-2.56.3 { 10544 db eval { 10545 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=23 10546 } 10547 } {32767 0000000000007fff} 10548 do_test boundary3-2.56.gt.1 { 10549 db eval { 10550 SELECT t2.a FROM t1 JOIN t2 USING(a) 10551 WHERE t1.rowid > 32767 ORDER BY t2.a 10552 } 10553 } {3 6 7 9 10 12 13 14 15 17 18 19 20 22 24 25 26 27 28 34 35 36 39 40 42 43 45 46 48 50 51 56 57 62} 10554 do_test boundary3-2.56.gt.2 { 10555 db eval { 10556 SELECT t2.a FROM t2 NATURAL JOIN t1 10557 WHERE t1.rowid > 32767 ORDER BY t1.a DESC 10558 } 10559 } {62 57 56 51 50 48 46 45 43 42 40 39 36 35 34 28 27 26 25 24 22 20 19 18 17 15 14 13 12 10 9 7 6 3} 10560 do_test boundary3-2.56.gt.3 { 10561 db eval { 10562 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 10563 WHERE t2.a=23 10564 ORDER BY t1.rowid 10565 } 10566 } {50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 10567 do_test boundary3-2.56.gt.4 { 10568 db eval { 10569 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 10570 WHERE t2.a=23 10571 ORDER BY t1.rowid DESC 10572 } 10573 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50} 10574 do_test boundary3-2.56.gt.5 { 10575 db eval { 10576 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 10577 WHERE t2.a=23 10578 ORDER BY x 10579 } 10580 } {50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 10581 do_test boundary3-2.56.gt.10 { 10582 db eval { 10583 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 10584 WHERE t2.a=23 10585 ORDER BY t1.rowid 10586 } 10587 } {50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 10588 do_test boundary3-2.56.gt.11 { 10589 db eval { 10590 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 10591 WHERE t2.a=23 10592 ORDER BY t1.rowid DESC 10593 } 10594 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50} 10595 do_test boundary3-2.56.ge.1 { 10596 db eval { 10597 SELECT t2.a FROM t1 JOIN t2 USING(a) 10598 WHERE t1.rowid >= 32767 ORDER BY t2.a 10599 } 10600 } {3 6 7 9 10 12 13 14 15 17 18 19 20 22 23 24 25 26 27 28 34 35 36 39 40 42 43 45 46 48 50 51 56 57 62} 10601 do_test boundary3-2.56.ge.2 { 10602 db eval { 10603 SELECT t2.a FROM t2 NATURAL JOIN t1 10604 WHERE t1.rowid >= 32767 ORDER BY t1.a DESC 10605 } 10606 } {62 57 56 51 50 48 46 45 43 42 40 39 36 35 34 28 27 26 25 24 23 22 20 19 18 17 15 14 13 12 10 9 7 6 3} 10607 do_test boundary3-2.56.ge.3 { 10608 db eval { 10609 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 10610 WHERE t2.a=23 10611 ORDER BY t1.rowid 10612 } 10613 } {23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 10614 do_test boundary3-2.56.ge.4 { 10615 db eval { 10616 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 10617 WHERE t2.a=23 10618 ORDER BY t1.rowid DESC 10619 } 10620 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23} 10621 do_test boundary3-2.56.ge.5 { 10622 db eval { 10623 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 10624 WHERE t2.a=23 10625 ORDER BY x 10626 } 10627 } {23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 10628 do_test boundary3-2.56.ge.10 { 10629 db eval { 10630 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 10631 WHERE t2.a=23 10632 ORDER BY t1.rowid 10633 } 10634 } {23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 10635 do_test boundary3-2.56.ge.11 { 10636 db eval { 10637 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 10638 WHERE t2.a=23 10639 ORDER BY t1.rowid DESC 10640 } 10641 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23} 10642 do_test boundary3-2.56.lt.1 { 10643 db eval { 10644 SELECT t2.a FROM t1 JOIN t2 USING(a) 10645 WHERE t1.rowid < 32767 ORDER BY t2.a 10646 } 10647 } {1 2 4 5 8 11 16 21 29 30 31 32 33 37 38 41 44 47 49 52 53 54 55 58 59 60 61 63 64} 10648 do_test boundary3-2.56.lt.2 { 10649 db eval { 10650 SELECT t2.a FROM t2 NATURAL JOIN t1 10651 WHERE t1.rowid < 32767 ORDER BY t1.a DESC 10652 } 10653 } {64 63 61 60 59 58 55 54 53 52 49 47 44 41 38 37 33 32 31 30 29 21 16 11 8 5 4 2 1} 10654 do_test boundary3-2.56.lt.3 { 10655 db eval { 10656 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 10657 WHERE t2.a=23 10658 ORDER BY t1.rowid 10659 } 10660 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16} 10661 do_test boundary3-2.56.lt.4 { 10662 db eval { 10663 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 10664 WHERE t2.a=23 10665 ORDER BY t1.rowid DESC 10666 } 10667 } {16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 10668 do_test boundary3-2.56.lt.5 { 10669 db eval { 10670 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 10671 WHERE t2.a=23 10672 ORDER BY x 10673 } 10674 } {59 60 41 5 31 4 49 30 61 8 16 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 10675 do_test boundary3-2.56.lt.10 { 10676 db eval { 10677 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 10678 WHERE t2.a=23 10679 ORDER BY t1.rowid 10680 } 10681 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16} 10682 do_test boundary3-2.56.lt.11 { 10683 db eval { 10684 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 10685 WHERE t2.a=23 10686 ORDER BY t1.rowid DESC 10687 } 10688 } {16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 10689 do_test boundary3-2.56.le.1 { 10690 db eval { 10691 SELECT t2.a FROM t1 JOIN t2 USING(a) 10692 WHERE t1.rowid <= 32767 ORDER BY t2.a 10693 } 10694 } {1 2 4 5 8 11 16 21 23 29 30 31 32 33 37 38 41 44 47 49 52 53 54 55 58 59 60 61 63 64} 10695 do_test boundary3-2.56.le.2 { 10696 db eval { 10697 SELECT t2.a FROM t2 NATURAL JOIN t1 10698 WHERE t1.rowid <= 32767 ORDER BY t1.a DESC 10699 } 10700 } {64 63 61 60 59 58 55 54 53 52 49 47 44 41 38 37 33 32 31 30 29 23 21 16 11 8 5 4 2 1} 10701 do_test boundary3-2.56.le.3 { 10702 db eval { 10703 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 10704 WHERE t2.a=23 10705 ORDER BY t1.rowid 10706 } 10707 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23} 10708 do_test boundary3-2.56.le.4 { 10709 db eval { 10710 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 10711 WHERE t2.a=23 10712 ORDER BY t1.rowid DESC 10713 } 10714 } {23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 10715 do_test boundary3-2.56.le.5 { 10716 db eval { 10717 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 10718 WHERE t2.a=23 10719 ORDER BY x 10720 } 10721 } {59 60 41 5 31 4 49 30 61 8 16 23 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 10722 do_test boundary3-2.56.le.10 { 10723 db eval { 10724 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 10725 WHERE t2.a=23 10726 ORDER BY t1.rowid 10727 } 10728 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23} 10729 do_test boundary3-2.56.le.11 { 10730 db eval { 10731 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 10732 WHERE t2.a=23 10733 ORDER BY t1.rowid DESC 10734 } 10735 } {23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 10736 do_test boundary3-2.57.1 { 10737 db eval { 10738 SELECT t1.* FROM t1, t2 WHERE t1.rowid=127 AND t2.a=t1.a 10739 } 10740 } {4 000000000000007f} 10741 do_test boundary3-2.57.2 { 10742 db eval { 10743 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='000000000000007f' 10744 } 10745 } {127 4} 10746 do_test boundary3-2.57.3 { 10747 db eval { 10748 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=4 10749 } 10750 } {127 000000000000007f} 10751 do_test boundary3-2.57.gt.1 { 10752 db eval { 10753 SELECT t2.a FROM t1 JOIN t2 USING(a) 10754 WHERE t1.rowid > 127 ORDER BY t2.a 10755 } 10756 } {3 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 34 35 36 39 40 42 43 45 46 48 49 50 51 56 57 61 62} 10757 do_test boundary3-2.57.gt.2 { 10758 db eval { 10759 SELECT t2.a FROM t2 NATURAL JOIN t1 10760 WHERE t1.rowid > 127 ORDER BY t1.a DESC 10761 } 10762 } {62 61 57 56 51 50 49 48 46 45 43 42 40 39 36 35 34 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 3} 10763 do_test boundary3-2.57.gt.3 { 10764 db eval { 10765 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 10766 WHERE t2.a=4 10767 ORDER BY t1.rowid 10768 } 10769 } {49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 10770 do_test boundary3-2.57.gt.4 { 10771 db eval { 10772 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 10773 WHERE t2.a=4 10774 ORDER BY t1.rowid DESC 10775 } 10776 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49} 10777 do_test boundary3-2.57.gt.5 { 10778 db eval { 10779 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 10780 WHERE t2.a=4 10781 ORDER BY x 10782 } 10783 } {49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 10784 do_test boundary3-2.57.gt.10 { 10785 db eval { 10786 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 10787 WHERE t2.a=4 10788 ORDER BY t1.rowid 10789 } 10790 } {49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 10791 do_test boundary3-2.57.gt.11 { 10792 db eval { 10793 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 10794 WHERE t2.a=4 10795 ORDER BY t1.rowid DESC 10796 } 10797 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49} 10798 do_test boundary3-2.57.ge.1 { 10799 db eval { 10800 SELECT t2.a FROM t1 JOIN t2 USING(a) 10801 WHERE t1.rowid >= 127 ORDER BY t2.a 10802 } 10803 } {3 4 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 34 35 36 39 40 42 43 45 46 48 49 50 51 56 57 61 62} 10804 do_test boundary3-2.57.ge.2 { 10805 db eval { 10806 SELECT t2.a FROM t2 NATURAL JOIN t1 10807 WHERE t1.rowid >= 127 ORDER BY t1.a DESC 10808 } 10809 } {62 61 57 56 51 50 49 48 46 45 43 42 40 39 36 35 34 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 4 3} 10810 do_test boundary3-2.57.ge.3 { 10811 db eval { 10812 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 10813 WHERE t2.a=4 10814 ORDER BY t1.rowid 10815 } 10816 } {4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 10817 do_test boundary3-2.57.ge.4 { 10818 db eval { 10819 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 10820 WHERE t2.a=4 10821 ORDER BY t1.rowid DESC 10822 } 10823 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4} 10824 do_test boundary3-2.57.ge.5 { 10825 db eval { 10826 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 10827 WHERE t2.a=4 10828 ORDER BY x 10829 } 10830 } {4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 10831 do_test boundary3-2.57.ge.10 { 10832 db eval { 10833 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 10834 WHERE t2.a=4 10835 ORDER BY t1.rowid 10836 } 10837 } {4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 10838 do_test boundary3-2.57.ge.11 { 10839 db eval { 10840 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 10841 WHERE t2.a=4 10842 ORDER BY t1.rowid DESC 10843 } 10844 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4} 10845 do_test boundary3-2.57.lt.1 { 10846 db eval { 10847 SELECT t2.a FROM t1 JOIN t2 USING(a) 10848 WHERE t1.rowid < 127 ORDER BY t2.a 10849 } 10850 } {1 2 5 11 21 29 31 32 33 37 38 41 44 47 52 53 54 55 58 59 60 63 64} 10851 do_test boundary3-2.57.lt.2 { 10852 db eval { 10853 SELECT t2.a FROM t2 NATURAL JOIN t1 10854 WHERE t1.rowid < 127 ORDER BY t1.a DESC 10855 } 10856 } {64 63 60 59 58 55 54 53 52 47 44 41 38 37 33 32 31 29 21 11 5 2 1} 10857 do_test boundary3-2.57.lt.3 { 10858 db eval { 10859 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 10860 WHERE t2.a=4 10861 ORDER BY t1.rowid 10862 } 10863 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31} 10864 do_test boundary3-2.57.lt.4 { 10865 db eval { 10866 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 10867 WHERE t2.a=4 10868 ORDER BY t1.rowid DESC 10869 } 10870 } {31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 10871 do_test boundary3-2.57.lt.5 { 10872 db eval { 10873 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 10874 WHERE t2.a=4 10875 ORDER BY x 10876 } 10877 } {59 60 41 5 31 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 10878 do_test boundary3-2.57.lt.10 { 10879 db eval { 10880 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 10881 WHERE t2.a=4 10882 ORDER BY t1.rowid 10883 } 10884 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31} 10885 do_test boundary3-2.57.lt.11 { 10886 db eval { 10887 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 10888 WHERE t2.a=4 10889 ORDER BY t1.rowid DESC 10890 } 10891 } {31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 10892 do_test boundary3-2.57.le.1 { 10893 db eval { 10894 SELECT t2.a FROM t1 JOIN t2 USING(a) 10895 WHERE t1.rowid <= 127 ORDER BY t2.a 10896 } 10897 } {1 2 4 5 11 21 29 31 32 33 37 38 41 44 47 52 53 54 55 58 59 60 63 64} 10898 do_test boundary3-2.57.le.2 { 10899 db eval { 10900 SELECT t2.a FROM t2 NATURAL JOIN t1 10901 WHERE t1.rowid <= 127 ORDER BY t1.a DESC 10902 } 10903 } {64 63 60 59 58 55 54 53 52 47 44 41 38 37 33 32 31 29 21 11 5 4 2 1} 10904 do_test boundary3-2.57.le.3 { 10905 db eval { 10906 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 10907 WHERE t2.a=4 10908 ORDER BY t1.rowid 10909 } 10910 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4} 10911 do_test boundary3-2.57.le.4 { 10912 db eval { 10913 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 10914 WHERE t2.a=4 10915 ORDER BY t1.rowid DESC 10916 } 10917 } {4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 10918 do_test boundary3-2.57.le.5 { 10919 db eval { 10920 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 10921 WHERE t2.a=4 10922 ORDER BY x 10923 } 10924 } {59 60 41 5 31 4 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 10925 do_test boundary3-2.57.le.10 { 10926 db eval { 10927 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 10928 WHERE t2.a=4 10929 ORDER BY t1.rowid 10930 } 10931 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4} 10932 do_test boundary3-2.57.le.11 { 10933 db eval { 10934 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 10935 WHERE t2.a=4 10936 ORDER BY t1.rowid DESC 10937 } 10938 } {4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 10939 do_test boundary3-2.58.1 { 10940 db eval { 10941 SELECT t1.* FROM t1, t2 WHERE t1.rowid=36028797018963967 AND t2.a=t1.a 10942 } 10943 } {27 007fffffffffffff} 10944 do_test boundary3-2.58.2 { 10945 db eval { 10946 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='007fffffffffffff' 10947 } 10948 } {36028797018963967 27} 10949 do_test boundary3-2.58.3 { 10950 db eval { 10951 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=27 10952 } 10953 } {36028797018963967 007fffffffffffff} 10954 do_test boundary3-2.58.gt.1 { 10955 db eval { 10956 SELECT t2.a FROM t1 JOIN t2 USING(a) 10957 WHERE t1.rowid > 36028797018963967 ORDER BY t2.a 10958 } 10959 } {3 17 28 45} 10960 do_test boundary3-2.58.gt.2 { 10961 db eval { 10962 SELECT t2.a FROM t2 NATURAL JOIN t1 10963 WHERE t1.rowid > 36028797018963967 ORDER BY t1.a DESC 10964 } 10965 } {45 28 17 3} 10966 do_test boundary3-2.58.gt.3 { 10967 db eval { 10968 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 10969 WHERE t2.a=27 10970 ORDER BY t1.rowid 10971 } 10972 } {45 17 28 3} 10973 do_test boundary3-2.58.gt.4 { 10974 db eval { 10975 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 10976 WHERE t2.a=27 10977 ORDER BY t1.rowid DESC 10978 } 10979 } {3 28 17 45} 10980 do_test boundary3-2.58.gt.5 { 10981 db eval { 10982 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 10983 WHERE t2.a=27 10984 ORDER BY x 10985 } 10986 } {45 17 28 3} 10987 do_test boundary3-2.58.ge.1 { 10988 db eval { 10989 SELECT t2.a FROM t1 JOIN t2 USING(a) 10990 WHERE t1.rowid >= 36028797018963967 ORDER BY t2.a 10991 } 10992 } {3 17 27 28 45} 10993 do_test boundary3-2.58.ge.2 { 10994 db eval { 10995 SELECT t2.a FROM t2 NATURAL JOIN t1 10996 WHERE t1.rowid >= 36028797018963967 ORDER BY t1.a DESC 10997 } 10998 } {45 28 27 17 3} 10999 do_test boundary3-2.58.ge.3 { 11000 db eval { 11001 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 11002 WHERE t2.a=27 11003 ORDER BY t1.rowid 11004 } 11005 } {27 45 17 28 3} 11006 do_test boundary3-2.58.ge.4 { 11007 db eval { 11008 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 11009 WHERE t2.a=27 11010 ORDER BY t1.rowid DESC 11011 } 11012 } {3 28 17 45 27} 11013 do_test boundary3-2.58.ge.5 { 11014 db eval { 11015 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 11016 WHERE t2.a=27 11017 ORDER BY x 11018 } 11019 } {27 45 17 28 3} 11020 do_test boundary3-2.58.lt.1 { 11021 db eval { 11022 SELECT t2.a FROM t1 JOIN t2 USING(a) 11023 WHERE t1.rowid < 36028797018963967 ORDER BY t2.a 11024 } 11025 } {1 2 4 5 6 7 8 9 10 11 12 13 14 15 16 18 19 20 21 22 23 24 25 26 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64} 11026 do_test boundary3-2.58.lt.2 { 11027 db eval { 11028 SELECT t2.a FROM t2 NATURAL JOIN t1 11029 WHERE t1.rowid < 36028797018963967 ORDER BY t1.a DESC 11030 } 11031 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 26 25 24 23 22 21 20 19 18 16 15 14 13 12 11 10 9 8 7 6 5 4 2 1} 11032 do_test boundary3-2.58.lt.3 { 11033 db eval { 11034 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 11035 WHERE t2.a=27 11036 ORDER BY t1.rowid 11037 } 11038 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43} 11039 do_test boundary3-2.58.lt.4 { 11040 db eval { 11041 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 11042 WHERE t2.a=27 11043 ORDER BY t1.rowid DESC 11044 } 11045 } {43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 11046 do_test boundary3-2.58.lt.5 { 11047 db eval { 11048 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 11049 WHERE t2.a=27 11050 ORDER BY x 11051 } 11052 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 11053 do_test boundary3-2.58.le.1 { 11054 db eval { 11055 SELECT t2.a FROM t1 JOIN t2 USING(a) 11056 WHERE t1.rowid <= 36028797018963967 ORDER BY t2.a 11057 } 11058 } {1 2 4 5 6 7 8 9 10 11 12 13 14 15 16 18 19 20 21 22 23 24 25 26 27 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64} 11059 do_test boundary3-2.58.le.2 { 11060 db eval { 11061 SELECT t2.a FROM t2 NATURAL JOIN t1 11062 WHERE t1.rowid <= 36028797018963967 ORDER BY t1.a DESC 11063 } 11064 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 27 26 25 24 23 22 21 20 19 18 16 15 14 13 12 11 10 9 8 7 6 5 4 2 1} 11065 do_test boundary3-2.58.le.3 { 11066 db eval { 11067 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 11068 WHERE t2.a=27 11069 ORDER BY t1.rowid 11070 } 11071 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27} 11072 do_test boundary3-2.58.le.4 { 11073 db eval { 11074 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 11075 WHERE t2.a=27 11076 ORDER BY t1.rowid DESC 11077 } 11078 } {27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 11079 do_test boundary3-2.58.le.5 { 11080 db eval { 11081 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 11082 WHERE t2.a=27 11083 ORDER BY x 11084 } 11085 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 11086 do_test boundary3-2.59.1 { 11087 db eval { 11088 SELECT t1.* FROM t1, t2 WHERE t1.rowid=4398046511104 AND t2.a=t1.a 11089 } 11090 } {56 0000040000000000} 11091 do_test boundary3-2.59.2 { 11092 db eval { 11093 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000040000000000' 11094 } 11095 } {4398046511104 56} 11096 do_test boundary3-2.59.3 { 11097 db eval { 11098 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=56 11099 } 11100 } {4398046511104 0000040000000000} 11101 do_test boundary3-2.59.gt.1 { 11102 db eval { 11103 SELECT t2.a FROM t1 JOIN t2 USING(a) 11104 WHERE t1.rowid > 4398046511104 ORDER BY t2.a 11105 } 11106 } {3 10 13 17 25 26 27 28 34 43 45} 11107 do_test boundary3-2.59.gt.2 { 11108 db eval { 11109 SELECT t2.a FROM t2 NATURAL JOIN t1 11110 WHERE t1.rowid > 4398046511104 ORDER BY t1.a DESC 11111 } 11112 } {45 43 34 28 27 26 25 17 13 10 3} 11113 do_test boundary3-2.59.gt.3 { 11114 db eval { 11115 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 11116 WHERE t2.a=56 11117 ORDER BY t1.rowid 11118 } 11119 } {25 34 10 26 13 43 27 45 17 28 3} 11120 do_test boundary3-2.59.gt.4 { 11121 db eval { 11122 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 11123 WHERE t2.a=56 11124 ORDER BY t1.rowid DESC 11125 } 11126 } {3 28 17 45 27 43 13 26 10 34 25} 11127 do_test boundary3-2.59.gt.5 { 11128 db eval { 11129 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 11130 WHERE t2.a=56 11131 ORDER BY x 11132 } 11133 } {25 34 10 26 13 43 27 45 17 28 3} 11134 do_test boundary3-2.59.gt.10 { 11135 db eval { 11136 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 11137 WHERE t2.a=56 11138 ORDER BY t1.rowid 11139 } 11140 } {25 34 10 26 13 43 27 45 17 28 3} 11141 do_test boundary3-2.59.gt.11 { 11142 db eval { 11143 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 11144 WHERE t2.a=56 11145 ORDER BY t1.rowid DESC 11146 } 11147 } {3 28 17 45 27 43 13 26 10 34 25} 11148 do_test boundary3-2.59.ge.1 { 11149 db eval { 11150 SELECT t2.a FROM t1 JOIN t2 USING(a) 11151 WHERE t1.rowid >= 4398046511104 ORDER BY t2.a 11152 } 11153 } {3 10 13 17 25 26 27 28 34 43 45 56} 11154 do_test boundary3-2.59.ge.2 { 11155 db eval { 11156 SELECT t2.a FROM t2 NATURAL JOIN t1 11157 WHERE t1.rowid >= 4398046511104 ORDER BY t1.a DESC 11158 } 11159 } {56 45 43 34 28 27 26 25 17 13 10 3} 11160 do_test boundary3-2.59.ge.3 { 11161 db eval { 11162 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 11163 WHERE t2.a=56 11164 ORDER BY t1.rowid 11165 } 11166 } {56 25 34 10 26 13 43 27 45 17 28 3} 11167 do_test boundary3-2.59.ge.4 { 11168 db eval { 11169 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 11170 WHERE t2.a=56 11171 ORDER BY t1.rowid DESC 11172 } 11173 } {3 28 17 45 27 43 13 26 10 34 25 56} 11174 do_test boundary3-2.59.ge.5 { 11175 db eval { 11176 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 11177 WHERE t2.a=56 11178 ORDER BY x 11179 } 11180 } {56 25 34 10 26 13 43 27 45 17 28 3} 11181 do_test boundary3-2.59.ge.10 { 11182 db eval { 11183 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 11184 WHERE t2.a=56 11185 ORDER BY t1.rowid 11186 } 11187 } {56 25 34 10 26 13 43 27 45 17 28 3} 11188 do_test boundary3-2.59.ge.11 { 11189 db eval { 11190 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 11191 WHERE t2.a=56 11192 ORDER BY t1.rowid DESC 11193 } 11194 } {3 28 17 45 27 43 13 26 10 34 25 56} 11195 do_test boundary3-2.59.lt.1 { 11196 db eval { 11197 SELECT t2.a FROM t1 JOIN t2 USING(a) 11198 WHERE t1.rowid < 4398046511104 ORDER BY t2.a 11199 } 11200 } {1 2 4 5 6 7 8 9 11 12 14 15 16 18 19 20 21 22 23 24 29 30 31 32 33 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 57 58 59 60 61 62 63 64} 11201 do_test boundary3-2.59.lt.2 { 11202 db eval { 11203 SELECT t2.a FROM t2 NATURAL JOIN t1 11204 WHERE t1.rowid < 4398046511104 ORDER BY t1.a DESC 11205 } 11206 } {64 63 62 61 60 59 58 57 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 33 32 31 30 29 24 23 22 21 20 19 18 16 15 14 12 11 9 8 7 6 5 4 2 1} 11207 do_test boundary3-2.59.lt.3 { 11208 db eval { 11209 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 11210 WHERE t2.a=56 11211 ORDER BY t1.rowid 11212 } 11213 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7} 11214 do_test boundary3-2.59.lt.4 { 11215 db eval { 11216 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 11217 WHERE t2.a=56 11218 ORDER BY t1.rowid DESC 11219 } 11220 } {7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 11221 do_test boundary3-2.59.lt.5 { 11222 db eval { 11223 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 11224 WHERE t2.a=56 11225 ORDER BY x 11226 } 11227 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 11228 do_test boundary3-2.59.lt.10 { 11229 db eval { 11230 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 11231 WHERE t2.a=56 11232 ORDER BY t1.rowid 11233 } 11234 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7} 11235 do_test boundary3-2.59.lt.11 { 11236 db eval { 11237 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 11238 WHERE t2.a=56 11239 ORDER BY t1.rowid DESC 11240 } 11241 } {7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 11242 do_test boundary3-2.59.le.1 { 11243 db eval { 11244 SELECT t2.a FROM t1 JOIN t2 USING(a) 11245 WHERE t1.rowid <= 4398046511104 ORDER BY t2.a 11246 } 11247 } {1 2 4 5 6 7 8 9 11 12 14 15 16 18 19 20 21 22 23 24 29 30 31 32 33 35 36 37 38 39 40 41 42 44 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64} 11248 do_test boundary3-2.59.le.2 { 11249 db eval { 11250 SELECT t2.a FROM t2 NATURAL JOIN t1 11251 WHERE t1.rowid <= 4398046511104 ORDER BY t1.a DESC 11252 } 11253 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 44 42 41 40 39 38 37 36 35 33 32 31 30 29 24 23 22 21 20 19 18 16 15 14 12 11 9 8 7 6 5 4 2 1} 11254 do_test boundary3-2.59.le.3 { 11255 db eval { 11256 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 11257 WHERE t2.a=56 11258 ORDER BY t1.rowid 11259 } 11260 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56} 11261 do_test boundary3-2.59.le.4 { 11262 db eval { 11263 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 11264 WHERE t2.a=56 11265 ORDER BY t1.rowid DESC 11266 } 11267 } {56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 11268 do_test boundary3-2.59.le.5 { 11269 db eval { 11270 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 11271 WHERE t2.a=56 11272 ORDER BY x 11273 } 11274 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 11275 do_test boundary3-2.59.le.10 { 11276 db eval { 11277 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 11278 WHERE t2.a=56 11279 ORDER BY t1.rowid 11280 } 11281 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56} 11282 do_test boundary3-2.59.le.11 { 11283 db eval { 11284 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 11285 WHERE t2.a=56 11286 ORDER BY t1.rowid DESC 11287 } 11288 } {56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 11289 do_test boundary3-2.60.1 { 11290 db eval { 11291 SELECT t1.* FROM t1, t2 WHERE t1.rowid=1 AND t2.a=t1.a 11292 } 11293 } {60 0000000000000001} 11294 do_test boundary3-2.60.2 { 11295 db eval { 11296 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000000000001' 11297 } 11298 } {1 60} 11299 do_test boundary3-2.60.3 { 11300 db eval { 11301 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=60 11302 } 11303 } {1 0000000000000001} 11304 do_test boundary3-2.60.gt.1 { 11305 db eval { 11306 SELECT t2.a FROM t1 JOIN t2 USING(a) 11307 WHERE t1.rowid > 1 ORDER BY t2.a 11308 } 11309 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 34 35 36 39 40 41 42 43 45 46 48 49 50 51 56 57 61 62} 11310 do_test boundary3-2.60.gt.2 { 11311 db eval { 11312 SELECT t2.a FROM t2 NATURAL JOIN t1 11313 WHERE t1.rowid > 1 ORDER BY t1.a DESC 11314 } 11315 } {62 61 57 56 51 50 49 48 46 45 43 42 41 40 39 36 35 34 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 11316 do_test boundary3-2.60.gt.3 { 11317 db eval { 11318 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 11319 WHERE t2.a=60 11320 ORDER BY t1.rowid 11321 } 11322 } {41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 11323 do_test boundary3-2.60.gt.4 { 11324 db eval { 11325 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 11326 WHERE t2.a=60 11327 ORDER BY t1.rowid DESC 11328 } 11329 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41} 11330 do_test boundary3-2.60.gt.5 { 11331 db eval { 11332 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 11333 WHERE t2.a=60 11334 ORDER BY x 11335 } 11336 } {41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 11337 do_test boundary3-2.60.gt.10 { 11338 db eval { 11339 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 11340 WHERE t2.a=60 11341 ORDER BY t1.rowid 11342 } 11343 } {41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 11344 do_test boundary3-2.60.gt.11 { 11345 db eval { 11346 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 11347 WHERE t2.a=60 11348 ORDER BY t1.rowid DESC 11349 } 11350 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41} 11351 do_test boundary3-2.60.ge.1 { 11352 db eval { 11353 SELECT t2.a FROM t1 JOIN t2 USING(a) 11354 WHERE t1.rowid >= 1 ORDER BY t2.a 11355 } 11356 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 34 35 36 39 40 41 42 43 45 46 48 49 50 51 56 57 60 61 62} 11357 do_test boundary3-2.60.ge.2 { 11358 db eval { 11359 SELECT t2.a FROM t2 NATURAL JOIN t1 11360 WHERE t1.rowid >= 1 ORDER BY t1.a DESC 11361 } 11362 } {62 61 60 57 56 51 50 49 48 46 45 43 42 41 40 39 36 35 34 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 11363 do_test boundary3-2.60.ge.3 { 11364 db eval { 11365 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 11366 WHERE t2.a=60 11367 ORDER BY t1.rowid 11368 } 11369 } {60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 11370 do_test boundary3-2.60.ge.4 { 11371 db eval { 11372 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 11373 WHERE t2.a=60 11374 ORDER BY t1.rowid DESC 11375 } 11376 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60} 11377 do_test boundary3-2.60.ge.5 { 11378 db eval { 11379 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 11380 WHERE t2.a=60 11381 ORDER BY x 11382 } 11383 } {60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 11384 do_test boundary3-2.60.ge.10 { 11385 db eval { 11386 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 11387 WHERE t2.a=60 11388 ORDER BY t1.rowid 11389 } 11390 } {60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 11391 do_test boundary3-2.60.ge.11 { 11392 db eval { 11393 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 11394 WHERE t2.a=60 11395 ORDER BY t1.rowid DESC 11396 } 11397 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60} 11398 do_test boundary3-2.60.lt.1 { 11399 db eval { 11400 SELECT t2.a FROM t1 JOIN t2 USING(a) 11401 WHERE t1.rowid < 1 ORDER BY t2.a 11402 } 11403 } {1 2 11 21 29 32 33 37 38 44 47 52 53 54 55 58 59 63 64} 11404 do_test boundary3-2.60.lt.2 { 11405 db eval { 11406 SELECT t2.a FROM t2 NATURAL JOIN t1 11407 WHERE t1.rowid < 1 ORDER BY t1.a DESC 11408 } 11409 } {64 63 59 58 55 54 53 52 47 44 38 37 33 32 29 21 11 2 1} 11410 do_test boundary3-2.60.lt.3 { 11411 db eval { 11412 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 11413 WHERE t2.a=60 11414 ORDER BY t1.rowid 11415 } 11416 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59} 11417 do_test boundary3-2.60.lt.4 { 11418 db eval { 11419 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 11420 WHERE t2.a=60 11421 ORDER BY t1.rowid DESC 11422 } 11423 } {59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 11424 do_test boundary3-2.60.lt.5 { 11425 db eval { 11426 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 11427 WHERE t2.a=60 11428 ORDER BY x 11429 } 11430 } {59 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 11431 do_test boundary3-2.60.lt.10 { 11432 db eval { 11433 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 11434 WHERE t2.a=60 11435 ORDER BY t1.rowid 11436 } 11437 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59} 11438 do_test boundary3-2.60.lt.11 { 11439 db eval { 11440 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 11441 WHERE t2.a=60 11442 ORDER BY t1.rowid DESC 11443 } 11444 } {59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 11445 do_test boundary3-2.60.le.1 { 11446 db eval { 11447 SELECT t2.a FROM t1 JOIN t2 USING(a) 11448 WHERE t1.rowid <= 1 ORDER BY t2.a 11449 } 11450 } {1 2 11 21 29 32 33 37 38 44 47 52 53 54 55 58 59 60 63 64} 11451 do_test boundary3-2.60.le.2 { 11452 db eval { 11453 SELECT t2.a FROM t2 NATURAL JOIN t1 11454 WHERE t1.rowid <= 1 ORDER BY t1.a DESC 11455 } 11456 } {64 63 60 59 58 55 54 53 52 47 44 38 37 33 32 29 21 11 2 1} 11457 do_test boundary3-2.60.le.3 { 11458 db eval { 11459 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 11460 WHERE t2.a=60 11461 ORDER BY t1.rowid 11462 } 11463 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60} 11464 do_test boundary3-2.60.le.4 { 11465 db eval { 11466 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 11467 WHERE t2.a=60 11468 ORDER BY t1.rowid DESC 11469 } 11470 } {60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 11471 do_test boundary3-2.60.le.5 { 11472 db eval { 11473 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 11474 WHERE t2.a=60 11475 ORDER BY x 11476 } 11477 } {59 60 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 11478 do_test boundary3-2.60.le.10 { 11479 db eval { 11480 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 11481 WHERE t2.a=60 11482 ORDER BY t1.rowid 11483 } 11484 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60} 11485 do_test boundary3-2.60.le.11 { 11486 db eval { 11487 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 11488 WHERE t2.a=60 11489 ORDER BY t1.rowid DESC 11490 } 11491 } {60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 11492 do_test boundary3-2.61.1 { 11493 db eval { 11494 SELECT t1.* FROM t1, t2 WHERE t1.rowid=36028797018963968 AND t2.a=t1.a 11495 } 11496 } {45 0080000000000000} 11497 do_test boundary3-2.61.2 { 11498 db eval { 11499 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0080000000000000' 11500 } 11501 } {36028797018963968 45} 11502 do_test boundary3-2.61.3 { 11503 db eval { 11504 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=45 11505 } 11506 } {36028797018963968 0080000000000000} 11507 do_test boundary3-2.61.gt.1 { 11508 db eval { 11509 SELECT t2.a FROM t1 JOIN t2 USING(a) 11510 WHERE t1.rowid > 36028797018963968 ORDER BY t2.a 11511 } 11512 } {3 17 28} 11513 do_test boundary3-2.61.gt.2 { 11514 db eval { 11515 SELECT t2.a FROM t2 NATURAL JOIN t1 11516 WHERE t1.rowid > 36028797018963968 ORDER BY t1.a DESC 11517 } 11518 } {28 17 3} 11519 do_test boundary3-2.61.gt.3 { 11520 db eval { 11521 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 11522 WHERE t2.a=45 11523 ORDER BY t1.rowid 11524 } 11525 } {17 28 3} 11526 do_test boundary3-2.61.gt.4 { 11527 db eval { 11528 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 11529 WHERE t2.a=45 11530 ORDER BY t1.rowid DESC 11531 } 11532 } {3 28 17} 11533 do_test boundary3-2.61.gt.5 { 11534 db eval { 11535 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 11536 WHERE t2.a=45 11537 ORDER BY x 11538 } 11539 } {17 28 3} 11540 do_test boundary3-2.61.ge.1 { 11541 db eval { 11542 SELECT t2.a FROM t1 JOIN t2 USING(a) 11543 WHERE t1.rowid >= 36028797018963968 ORDER BY t2.a 11544 } 11545 } {3 17 28 45} 11546 do_test boundary3-2.61.ge.2 { 11547 db eval { 11548 SELECT t2.a FROM t2 NATURAL JOIN t1 11549 WHERE t1.rowid >= 36028797018963968 ORDER BY t1.a DESC 11550 } 11551 } {45 28 17 3} 11552 do_test boundary3-2.61.ge.3 { 11553 db eval { 11554 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 11555 WHERE t2.a=45 11556 ORDER BY t1.rowid 11557 } 11558 } {45 17 28 3} 11559 do_test boundary3-2.61.ge.4 { 11560 db eval { 11561 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 11562 WHERE t2.a=45 11563 ORDER BY t1.rowid DESC 11564 } 11565 } {3 28 17 45} 11566 do_test boundary3-2.61.ge.5 { 11567 db eval { 11568 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 11569 WHERE t2.a=45 11570 ORDER BY x 11571 } 11572 } {45 17 28 3} 11573 do_test boundary3-2.61.lt.1 { 11574 db eval { 11575 SELECT t2.a FROM t1 JOIN t2 USING(a) 11576 WHERE t1.rowid < 36028797018963968 ORDER BY t2.a 11577 } 11578 } {1 2 4 5 6 7 8 9 10 11 12 13 14 15 16 18 19 20 21 22 23 24 25 26 27 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64} 11579 do_test boundary3-2.61.lt.2 { 11580 db eval { 11581 SELECT t2.a FROM t2 NATURAL JOIN t1 11582 WHERE t1.rowid < 36028797018963968 ORDER BY t1.a DESC 11583 } 11584 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 27 26 25 24 23 22 21 20 19 18 16 15 14 13 12 11 10 9 8 7 6 5 4 2 1} 11585 do_test boundary3-2.61.lt.3 { 11586 db eval { 11587 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 11588 WHERE t2.a=45 11589 ORDER BY t1.rowid 11590 } 11591 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27} 11592 do_test boundary3-2.61.lt.4 { 11593 db eval { 11594 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 11595 WHERE t2.a=45 11596 ORDER BY t1.rowid DESC 11597 } 11598 } {27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 11599 do_test boundary3-2.61.lt.5 { 11600 db eval { 11601 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 11602 WHERE t2.a=45 11603 ORDER BY x 11604 } 11605 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 11606 do_test boundary3-2.61.le.1 { 11607 db eval { 11608 SELECT t2.a FROM t1 JOIN t2 USING(a) 11609 WHERE t1.rowid <= 36028797018963968 ORDER BY t2.a 11610 } 11611 } {1 2 4 5 6 7 8 9 10 11 12 13 14 15 16 18 19 20 21 22 23 24 25 26 27 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} 11612 do_test boundary3-2.61.le.2 { 11613 db eval { 11614 SELECT t2.a FROM t2 NATURAL JOIN t1 11615 WHERE t1.rowid <= 36028797018963968 ORDER BY t1.a DESC 11616 } 11617 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 27 26 25 24 23 22 21 20 19 18 16 15 14 13 12 11 10 9 8 7 6 5 4 2 1} 11618 do_test boundary3-2.61.le.3 { 11619 db eval { 11620 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 11621 WHERE t2.a=45 11622 ORDER BY t1.rowid 11623 } 11624 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45} 11625 do_test boundary3-2.61.le.4 { 11626 db eval { 11627 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 11628 WHERE t2.a=45 11629 ORDER BY t1.rowid DESC 11630 } 11631 } {45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 11632 do_test boundary3-2.61.le.5 { 11633 db eval { 11634 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 11635 WHERE t2.a=45 11636 ORDER BY x 11637 } 11638 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 11639 do_test boundary3-2.62.1 { 11640 db eval { 11641 SELECT t1.* FROM t1, t2 WHERE t1.rowid=-2147483649 AND t2.a=t1.a 11642 } 11643 } {47 ffffffff7fffffff} 11644 do_test boundary3-2.62.2 { 11645 db eval { 11646 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='ffffffff7fffffff' 11647 } 11648 } {-2147483649 47} 11649 do_test boundary3-2.62.3 { 11650 db eval { 11651 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=47 11652 } 11653 } {-2147483649 ffffffff7fffffff} 11654 do_test boundary3-2.62.gt.1 { 11655 db eval { 11656 SELECT t2.a FROM t1 JOIN t2 USING(a) 11657 WHERE t1.rowid > -2147483649 ORDER BY t2.a 11658 } 11659 } {1 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 45 46 48 49 50 51 52 53 54 56 57 59 60 61 62} 11660 do_test boundary3-2.62.gt.2 { 11661 db eval { 11662 SELECT t2.a FROM t2 NATURAL JOIN t1 11663 WHERE t1.rowid > -2147483649 ORDER BY t1.a DESC 11664 } 11665 } {62 61 60 59 57 56 54 53 52 51 50 49 48 46 45 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 1} 11666 do_test boundary3-2.62.gt.3 { 11667 db eval { 11668 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 11669 WHERE t2.a=47 11670 ORDER BY t1.rowid 11671 } 11672 } {11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 11673 do_test boundary3-2.62.gt.4 { 11674 db eval { 11675 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 11676 WHERE t2.a=47 11677 ORDER BY t1.rowid DESC 11678 } 11679 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11} 11680 do_test boundary3-2.62.gt.5 { 11681 db eval { 11682 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 11683 WHERE t2.a=47 11684 ORDER BY x 11685 } 11686 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 11 1 37 29 32 54 53 52 33 38} 11687 do_test boundary3-2.62.gt.10 { 11688 db eval { 11689 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 11690 WHERE t2.a=47 11691 ORDER BY t1.rowid 11692 } 11693 } {11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 11694 do_test boundary3-2.62.gt.11 { 11695 db eval { 11696 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 11697 WHERE t2.a=47 11698 ORDER BY t1.rowid DESC 11699 } 11700 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11} 11701 do_test boundary3-2.62.ge.1 { 11702 db eval { 11703 SELECT t2.a FROM t1 JOIN t2 USING(a) 11704 WHERE t1.rowid >= -2147483649 ORDER BY t2.a 11705 } 11706 } {1 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 45 46 47 48 49 50 51 52 53 54 56 57 59 60 61 62} 11707 do_test boundary3-2.62.ge.2 { 11708 db eval { 11709 SELECT t2.a FROM t2 NATURAL JOIN t1 11710 WHERE t1.rowid >= -2147483649 ORDER BY t1.a DESC 11711 } 11712 } {62 61 60 59 57 56 54 53 52 51 50 49 48 47 46 45 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 1} 11713 do_test boundary3-2.62.ge.3 { 11714 db eval { 11715 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 11716 WHERE t2.a=47 11717 ORDER BY t1.rowid 11718 } 11719 } {47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 11720 do_test boundary3-2.62.ge.4 { 11721 db eval { 11722 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 11723 WHERE t2.a=47 11724 ORDER BY t1.rowid DESC 11725 } 11726 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47} 11727 do_test boundary3-2.62.ge.5 { 11728 db eval { 11729 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 11730 WHERE t2.a=47 11731 ORDER BY x 11732 } 11733 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 47 11 1 37 29 32 54 53 52 33 38} 11734 do_test boundary3-2.62.ge.10 { 11735 db eval { 11736 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 11737 WHERE t2.a=47 11738 ORDER BY t1.rowid 11739 } 11740 } {47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 11741 do_test boundary3-2.62.ge.11 { 11742 db eval { 11743 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 11744 WHERE t2.a=47 11745 ORDER BY t1.rowid DESC 11746 } 11747 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47} 11748 do_test boundary3-2.62.lt.1 { 11749 db eval { 11750 SELECT t2.a FROM t1 JOIN t2 USING(a) 11751 WHERE t1.rowid < -2147483649 ORDER BY t2.a 11752 } 11753 } {2 21 44 55 58 63 64} 11754 do_test boundary3-2.62.lt.2 { 11755 db eval { 11756 SELECT t2.a FROM t2 NATURAL JOIN t1 11757 WHERE t1.rowid < -2147483649 ORDER BY t1.a DESC 11758 } 11759 } {64 63 58 55 44 21 2} 11760 do_test boundary3-2.62.lt.3 { 11761 db eval { 11762 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 11763 WHERE t2.a=47 11764 ORDER BY t1.rowid 11765 } 11766 } {55 2 64 21 44 58 63} 11767 do_test boundary3-2.62.lt.4 { 11768 db eval { 11769 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 11770 WHERE t2.a=47 11771 ORDER BY t1.rowid DESC 11772 } 11773 } {63 58 44 21 64 2 55} 11774 do_test boundary3-2.62.lt.5 { 11775 db eval { 11776 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 11777 WHERE t2.a=47 11778 ORDER BY x 11779 } 11780 } {55 2 64 21 44 58 63} 11781 do_test boundary3-2.62.lt.10 { 11782 db eval { 11783 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 11784 WHERE t2.a=47 11785 ORDER BY t1.rowid 11786 } 11787 } {55 2 64 21 44 58 63} 11788 do_test boundary3-2.62.lt.11 { 11789 db eval { 11790 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 11791 WHERE t2.a=47 11792 ORDER BY t1.rowid DESC 11793 } 11794 } {63 58 44 21 64 2 55} 11795 do_test boundary3-2.62.le.1 { 11796 db eval { 11797 SELECT t2.a FROM t1 JOIN t2 USING(a) 11798 WHERE t1.rowid <= -2147483649 ORDER BY t2.a 11799 } 11800 } {2 21 44 47 55 58 63 64} 11801 do_test boundary3-2.62.le.2 { 11802 db eval { 11803 SELECT t2.a FROM t2 NATURAL JOIN t1 11804 WHERE t1.rowid <= -2147483649 ORDER BY t1.a DESC 11805 } 11806 } {64 63 58 55 47 44 21 2} 11807 do_test boundary3-2.62.le.3 { 11808 db eval { 11809 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 11810 WHERE t2.a=47 11811 ORDER BY t1.rowid 11812 } 11813 } {55 2 64 21 44 58 63 47} 11814 do_test boundary3-2.62.le.4 { 11815 db eval { 11816 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 11817 WHERE t2.a=47 11818 ORDER BY t1.rowid DESC 11819 } 11820 } {47 63 58 44 21 64 2 55} 11821 do_test boundary3-2.62.le.5 { 11822 db eval { 11823 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 11824 WHERE t2.a=47 11825 ORDER BY x 11826 } 11827 } {55 2 64 21 44 58 63 47} 11828 do_test boundary3-2.62.le.10 { 11829 db eval { 11830 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 11831 WHERE t2.a=47 11832 ORDER BY t1.rowid 11833 } 11834 } {55 2 64 21 44 58 63 47} 11835 do_test boundary3-2.62.le.11 { 11836 db eval { 11837 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 11838 WHERE t2.a=47 11839 ORDER BY t1.rowid DESC 11840 } 11841 } {47 63 58 44 21 64 2 55} 11842 do_test boundary3-2.63.1 { 11843 db eval { 11844 SELECT t1.* FROM t1, t2 WHERE t1.rowid=-36028797018963969 AND t2.a=t1.a 11845 } 11846 } {2 ff7fffffffffffff} 11847 do_test boundary3-2.63.2 { 11848 db eval { 11849 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='ff7fffffffffffff' 11850 } 11851 } {-36028797018963969 2} 11852 do_test boundary3-2.63.3 { 11853 db eval { 11854 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=2 11855 } 11856 } {-36028797018963969 ff7fffffffffffff} 11857 do_test boundary3-2.63.gt.1 { 11858 db eval { 11859 SELECT t2.a FROM t1 JOIN t2 USING(a) 11860 WHERE t1.rowid > -36028797018963969 ORDER BY t2.a 11861 } 11862 } {1 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 56 57 58 59 60 61 62 63 64} 11863 do_test boundary3-2.63.gt.2 { 11864 db eval { 11865 SELECT t2.a FROM t2 NATURAL JOIN t1 11866 WHERE t1.rowid > -36028797018963969 ORDER BY t1.a DESC 11867 } 11868 } {64 63 62 61 60 59 58 57 56 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 1} 11869 do_test boundary3-2.63.gt.3 { 11870 db eval { 11871 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 11872 WHERE t2.a=2 11873 ORDER BY t1.rowid 11874 } 11875 } {64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 11876 do_test boundary3-2.63.gt.4 { 11877 db eval { 11878 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 11879 WHERE t2.a=2 11880 ORDER BY t1.rowid DESC 11881 } 11882 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64} 11883 do_test boundary3-2.63.gt.5 { 11884 db eval { 11885 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 11886 WHERE t2.a=2 11887 ORDER BY x 11888 } 11889 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 11890 do_test boundary3-2.63.ge.1 { 11891 db eval { 11892 SELECT t2.a FROM t1 JOIN t2 USING(a) 11893 WHERE t1.rowid >= -36028797018963969 ORDER BY t2.a 11894 } 11895 } {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 56 57 58 59 60 61 62 63 64} 11896 do_test boundary3-2.63.ge.2 { 11897 db eval { 11898 SELECT t2.a FROM t2 NATURAL JOIN t1 11899 WHERE t1.rowid >= -36028797018963969 ORDER BY t1.a DESC 11900 } 11901 } {64 63 62 61 60 59 58 57 56 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1} 11902 do_test boundary3-2.63.ge.3 { 11903 db eval { 11904 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 11905 WHERE t2.a=2 11906 ORDER BY t1.rowid 11907 } 11908 } {2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 11909 do_test boundary3-2.63.ge.4 { 11910 db eval { 11911 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 11912 WHERE t2.a=2 11913 ORDER BY t1.rowid DESC 11914 } 11915 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2} 11916 do_test boundary3-2.63.ge.5 { 11917 db eval { 11918 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 11919 WHERE t2.a=2 11920 ORDER BY x 11921 } 11922 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 11923 do_test boundary3-2.63.lt.1 { 11924 db eval { 11925 SELECT t2.a FROM t1 JOIN t2 USING(a) 11926 WHERE t1.rowid < -36028797018963969 ORDER BY t2.a 11927 } 11928 } {55} 11929 do_test boundary3-2.63.lt.2 { 11930 db eval { 11931 SELECT t2.a FROM t2 NATURAL JOIN t1 11932 WHERE t1.rowid < -36028797018963969 ORDER BY t1.a DESC 11933 } 11934 } {55} 11935 do_test boundary3-2.63.lt.3 { 11936 db eval { 11937 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 11938 WHERE t2.a=2 11939 ORDER BY t1.rowid 11940 } 11941 } {55} 11942 do_test boundary3-2.63.lt.4 { 11943 db eval { 11944 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 11945 WHERE t2.a=2 11946 ORDER BY t1.rowid DESC 11947 } 11948 } {55} 11949 do_test boundary3-2.63.lt.5 { 11950 db eval { 11951 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 11952 WHERE t2.a=2 11953 ORDER BY x 11954 } 11955 } {55} 11956 do_test boundary3-2.63.le.1 { 11957 db eval { 11958 SELECT t2.a FROM t1 JOIN t2 USING(a) 11959 WHERE t1.rowid <= -36028797018963969 ORDER BY t2.a 11960 } 11961 } {2 55} 11962 do_test boundary3-2.63.le.2 { 11963 db eval { 11964 SELECT t2.a FROM t2 NATURAL JOIN t1 11965 WHERE t1.rowid <= -36028797018963969 ORDER BY t1.a DESC 11966 } 11967 } {55 2} 11968 do_test boundary3-2.63.le.3 { 11969 db eval { 11970 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 11971 WHERE t2.a=2 11972 ORDER BY t1.rowid 11973 } 11974 } {55 2} 11975 do_test boundary3-2.63.le.4 { 11976 db eval { 11977 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 11978 WHERE t2.a=2 11979 ORDER BY t1.rowid DESC 11980 } 11981 } {2 55} 11982 do_test boundary3-2.63.le.5 { 11983 db eval { 11984 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 11985 WHERE t2.a=2 11986 ORDER BY x 11987 } 11988 } {55 2} 11989 do_test boundary3-2.64.1 { 11990 db eval { 11991 SELECT t1.* FROM t1, t2 WHERE t1.rowid=3 AND t2.a=t1.a 11992 } 11993 } {5 0000000000000003} 11994 do_test boundary3-2.64.2 { 11995 db eval { 11996 SELECT t2.* FROM t1 JOIN t2 USING(a) WHERE x='0000000000000003' 11997 } 11998 } {3 5} 11999 do_test boundary3-2.64.3 { 12000 db eval { 12001 SELECT t1.rowid, x FROM t1 JOIN t2 ON t2.r=t1.rowid WHERE t2.a=5 12002 } 12003 } {3 0000000000000003} 12004 do_test boundary3-2.64.gt.1 { 12005 db eval { 12006 SELECT t2.a FROM t1 JOIN t2 USING(a) 12007 WHERE t1.rowid > 3 ORDER BY t2.a 12008 } 12009 } {3 4 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 34 35 36 39 40 42 43 45 46 48 49 50 51 56 57 61 62} 12010 do_test boundary3-2.64.gt.2 { 12011 db eval { 12012 SELECT t2.a FROM t2 NATURAL JOIN t1 12013 WHERE t1.rowid > 3 ORDER BY t1.a DESC 12014 } 12015 } {62 61 57 56 51 50 49 48 46 45 43 42 40 39 36 35 34 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 4 3} 12016 do_test boundary3-2.64.gt.3 { 12017 db eval { 12018 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 12019 WHERE t2.a=5 12020 ORDER BY t1.rowid 12021 } 12022 } {31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 12023 do_test boundary3-2.64.gt.4 { 12024 db eval { 12025 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 12026 WHERE t2.a=5 12027 ORDER BY t1.rowid DESC 12028 } 12029 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31} 12030 do_test boundary3-2.64.gt.5 { 12031 db eval { 12032 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 12033 WHERE t2.a=5 12034 ORDER BY x 12035 } 12036 } {31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 12037 do_test boundary3-2.64.gt.10 { 12038 db eval { 12039 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 12040 WHERE t2.a=5 12041 ORDER BY t1.rowid 12042 } 12043 } {31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 12044 do_test boundary3-2.64.gt.11 { 12045 db eval { 12046 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > CAST(t2.r AS real) 12047 WHERE t2.a=5 12048 ORDER BY t1.rowid DESC 12049 } 12050 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31} 12051 do_test boundary3-2.64.ge.1 { 12052 db eval { 12053 SELECT t2.a FROM t1 JOIN t2 USING(a) 12054 WHERE t1.rowid >= 3 ORDER BY t2.a 12055 } 12056 } {3 4 5 6 7 8 9 10 12 13 14 15 16 17 18 19 20 22 23 24 25 26 27 28 30 31 34 35 36 39 40 42 43 45 46 48 49 50 51 56 57 61 62} 12057 do_test boundary3-2.64.ge.2 { 12058 db eval { 12059 SELECT t2.a FROM t2 NATURAL JOIN t1 12060 WHERE t1.rowid >= 3 ORDER BY t1.a DESC 12061 } 12062 } {62 61 57 56 51 50 49 48 46 45 43 42 40 39 36 35 34 31 30 28 27 26 25 24 23 22 20 19 18 17 16 15 14 13 12 10 9 8 7 6 5 4 3} 12063 do_test boundary3-2.64.ge.3 { 12064 db eval { 12065 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 12066 WHERE t2.a=5 12067 ORDER BY t1.rowid 12068 } 12069 } {5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 12070 do_test boundary3-2.64.ge.4 { 12071 db eval { 12072 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 12073 WHERE t2.a=5 12074 ORDER BY t1.rowid DESC 12075 } 12076 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5} 12077 do_test boundary3-2.64.ge.5 { 12078 db eval { 12079 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 12080 WHERE t2.a=5 12081 ORDER BY x 12082 } 12083 } {5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 12084 do_test boundary3-2.64.ge.10 { 12085 db eval { 12086 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 12087 WHERE t2.a=5 12088 ORDER BY t1.rowid 12089 } 12090 } {5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 12091 do_test boundary3-2.64.ge.11 { 12092 db eval { 12093 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= CAST(t2.r AS real) 12094 WHERE t2.a=5 12095 ORDER BY t1.rowid DESC 12096 } 12097 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5} 12098 do_test boundary3-2.64.lt.1 { 12099 db eval { 12100 SELECT t2.a FROM t1 JOIN t2 USING(a) 12101 WHERE t1.rowid < 3 ORDER BY t2.a 12102 } 12103 } {1 2 11 21 29 32 33 37 38 41 44 47 52 53 54 55 58 59 60 63 64} 12104 do_test boundary3-2.64.lt.2 { 12105 db eval { 12106 SELECT t2.a FROM t2 NATURAL JOIN t1 12107 WHERE t1.rowid < 3 ORDER BY t1.a DESC 12108 } 12109 } {64 63 60 59 58 55 54 53 52 47 44 41 38 37 33 32 29 21 11 2 1} 12110 do_test boundary3-2.64.lt.3 { 12111 db eval { 12112 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 12113 WHERE t2.a=5 12114 ORDER BY t1.rowid 12115 } 12116 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41} 12117 do_test boundary3-2.64.lt.4 { 12118 db eval { 12119 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 12120 WHERE t2.a=5 12121 ORDER BY t1.rowid DESC 12122 } 12123 } {41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 12124 do_test boundary3-2.64.lt.5 { 12125 db eval { 12126 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 12127 WHERE t2.a=5 12128 ORDER BY x 12129 } 12130 } {59 60 41 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 12131 do_test boundary3-2.64.lt.10 { 12132 db eval { 12133 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 12134 WHERE t2.a=5 12135 ORDER BY t1.rowid 12136 } 12137 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41} 12138 do_test boundary3-2.64.lt.11 { 12139 db eval { 12140 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < CAST(t2.r AS real) 12141 WHERE t2.a=5 12142 ORDER BY t1.rowid DESC 12143 } 12144 } {41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 12145 do_test boundary3-2.64.le.1 { 12146 db eval { 12147 SELECT t2.a FROM t1 JOIN t2 USING(a) 12148 WHERE t1.rowid <= 3 ORDER BY t2.a 12149 } 12150 } {1 2 5 11 21 29 32 33 37 38 41 44 47 52 53 54 55 58 59 60 63 64} 12151 do_test boundary3-2.64.le.2 { 12152 db eval { 12153 SELECT t2.a FROM t2 NATURAL JOIN t1 12154 WHERE t1.rowid <= 3 ORDER BY t1.a DESC 12155 } 12156 } {64 63 60 59 58 55 54 53 52 47 44 41 38 37 33 32 29 21 11 5 2 1} 12157 do_test boundary3-2.64.le.3 { 12158 db eval { 12159 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 12160 WHERE t2.a=5 12161 ORDER BY t1.rowid 12162 } 12163 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5} 12164 do_test boundary3-2.64.le.4 { 12165 db eval { 12166 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 12167 WHERE t2.a=5 12168 ORDER BY t1.rowid DESC 12169 } 12170 } {5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 12171 do_test boundary3-2.64.le.5 { 12172 db eval { 12173 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 12174 WHERE t2.a=5 12175 ORDER BY x 12176 } 12177 } {59 60 41 5 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 12178 do_test boundary3-2.64.le.10 { 12179 db eval { 12180 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 12181 WHERE t2.a=5 12182 ORDER BY t1.rowid 12183 } 12184 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5} 12185 do_test boundary3-2.64.le.11 { 12186 db eval { 12187 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= CAST(t2.r AS real) 12188 WHERE t2.a=5 12189 ORDER BY t1.rowid DESC 12190 } 12191 } {5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 12192 do_test boundary3-2.65.gt.1 { 12193 db eval { 12194 SELECT t2.a FROM t1 JOIN t2 USING(a) 12195 WHERE t1.rowid > 9.22337303685477580800e+18 ORDER BY t2.a 12196 } 12197 } {} 12198 do_test boundary3-2.65.gt.2 { 12199 db eval { 12200 SELECT t2.a FROM t2 NATURAL JOIN t1 12201 WHERE t1.rowid > 9.22337303685477580800e+18 ORDER BY t1.a DESC 12202 } 12203 } {} 12204 do_test boundary3-2.65.gt.3 { 12205 db eval { 12206 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 12207 WHERE t2.a=65 12208 ORDER BY t1.rowid 12209 } 12210 } {} 12211 do_test boundary3-2.65.gt.4 { 12212 db eval { 12213 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 12214 WHERE t2.a=65 12215 ORDER BY t1.rowid DESC 12216 } 12217 } {} 12218 do_test boundary3-2.65.gt.5 { 12219 db eval { 12220 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 12221 WHERE t2.a=65 12222 ORDER BY x 12223 } 12224 } {} 12225 do_test boundary3-2.65.ge.1 { 12226 db eval { 12227 SELECT t2.a FROM t1 JOIN t2 USING(a) 12228 WHERE t1.rowid >= 9.22337303685477580800e+18 ORDER BY t2.a 12229 } 12230 } {} 12231 do_test boundary3-2.65.ge.2 { 12232 db eval { 12233 SELECT t2.a FROM t2 NATURAL JOIN t1 12234 WHERE t1.rowid >= 9.22337303685477580800e+18 ORDER BY t1.a DESC 12235 } 12236 } {} 12237 do_test boundary3-2.65.ge.3 { 12238 db eval { 12239 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 12240 WHERE t2.a=65 12241 ORDER BY t1.rowid 12242 } 12243 } {} 12244 do_test boundary3-2.65.ge.4 { 12245 db eval { 12246 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 12247 WHERE t2.a=65 12248 ORDER BY t1.rowid DESC 12249 } 12250 } {} 12251 do_test boundary3-2.65.ge.5 { 12252 db eval { 12253 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 12254 WHERE t2.a=65 12255 ORDER BY x 12256 } 12257 } {} 12258 do_test boundary3-2.65.lt.1 { 12259 db eval { 12260 SELECT t2.a FROM t1 JOIN t2 USING(a) 12261 WHERE t1.rowid < 9.22337303685477580800e+18 ORDER BY t2.a 12262 } 12263 } {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} 12264 do_test boundary3-2.65.lt.2 { 12265 db eval { 12266 SELECT t2.a FROM t2 NATURAL JOIN t1 12267 WHERE t1.rowid < 9.22337303685477580800e+18 ORDER BY t1.a DESC 12268 } 12269 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1} 12270 do_test boundary3-2.65.lt.3 { 12271 db eval { 12272 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 12273 WHERE t2.a=65 12274 ORDER BY t1.rowid 12275 } 12276 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 12277 do_test boundary3-2.65.lt.4 { 12278 db eval { 12279 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 12280 WHERE t2.a=65 12281 ORDER BY t1.rowid DESC 12282 } 12283 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 12284 do_test boundary3-2.65.lt.5 { 12285 db eval { 12286 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 12287 WHERE t2.a=65 12288 ORDER BY x 12289 } 12290 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 12291 do_test boundary3-2.65.le.1 { 12292 db eval { 12293 SELECT t2.a FROM t1 JOIN t2 USING(a) 12294 WHERE t1.rowid <= 9.22337303685477580800e+18 ORDER BY t2.a 12295 } 12296 } {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} 12297 do_test boundary3-2.65.le.2 { 12298 db eval { 12299 SELECT t2.a FROM t2 NATURAL JOIN t1 12300 WHERE t1.rowid <= 9.22337303685477580800e+18 ORDER BY t1.a DESC 12301 } 12302 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1} 12303 do_test boundary3-2.65.le.3 { 12304 db eval { 12305 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 12306 WHERE t2.a=65 12307 ORDER BY t1.rowid 12308 } 12309 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 12310 do_test boundary3-2.65.le.4 { 12311 db eval { 12312 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 12313 WHERE t2.a=65 12314 ORDER BY t1.rowid DESC 12315 } 12316 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 12317 do_test boundary3-2.65.le.5 { 12318 db eval { 12319 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 12320 WHERE t2.a=65 12321 ORDER BY x 12322 } 12323 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 12324 do_test boundary3-2.66.gt.1 { 12325 db eval { 12326 SELECT t2.a FROM t1 JOIN t2 USING(a) 12327 WHERE t1.rowid > -9.22337303685477580800e+18 ORDER BY t2.a 12328 } 12329 } {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} 12330 do_test boundary3-2.66.gt.2 { 12331 db eval { 12332 SELECT t2.a FROM t2 NATURAL JOIN t1 12333 WHERE t1.rowid > -9.22337303685477580800e+18 ORDER BY t1.a DESC 12334 } 12335 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1} 12336 do_test boundary3-2.66.gt.3 { 12337 db eval { 12338 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 12339 WHERE t2.a=66 12340 ORDER BY t1.rowid 12341 } 12342 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 12343 do_test boundary3-2.66.gt.4 { 12344 db eval { 12345 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 12346 WHERE t2.a=66 12347 ORDER BY t1.rowid DESC 12348 } 12349 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 12350 do_test boundary3-2.66.gt.5 { 12351 db eval { 12352 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid > t2.r 12353 WHERE t2.a=66 12354 ORDER BY x 12355 } 12356 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 12357 do_test boundary3-2.66.ge.1 { 12358 db eval { 12359 SELECT t2.a FROM t1 JOIN t2 USING(a) 12360 WHERE t1.rowid >= -9.22337303685477580800e+18 ORDER BY t2.a 12361 } 12362 } {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} 12363 do_test boundary3-2.66.ge.2 { 12364 db eval { 12365 SELECT t2.a FROM t2 NATURAL JOIN t1 12366 WHERE t1.rowid >= -9.22337303685477580800e+18 ORDER BY t1.a DESC 12367 } 12368 } {64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1} 12369 do_test boundary3-2.66.ge.3 { 12370 db eval { 12371 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 12372 WHERE t2.a=66 12373 ORDER BY t1.rowid 12374 } 12375 } {55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38 59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3} 12376 do_test boundary3-2.66.ge.4 { 12377 db eval { 12378 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 12379 WHERE t2.a=66 12380 ORDER BY t1.rowid DESC 12381 } 12382 } {3 28 17 45 27 43 13 26 10 34 25 56 7 19 57 35 46 22 39 36 14 51 20 40 12 6 9 24 18 42 15 62 48 50 23 16 8 61 30 49 4 31 5 41 60 59 38 33 52 53 54 32 29 37 1 11 47 63 58 44 21 64 2 55} 12383 do_test boundary3-2.66.ge.5 { 12384 db eval { 12385 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid >= t2.r 12386 WHERE t2.a=66 12387 ORDER BY x 12388 } 12389 } {59 60 41 5 31 4 49 30 61 8 16 23 50 48 62 15 42 18 24 9 6 12 40 20 51 14 36 39 22 46 35 57 19 7 56 25 34 10 26 13 43 27 45 17 28 3 55 2 64 21 44 58 63 47 11 1 37 29 32 54 53 52 33 38} 12390 do_test boundary3-2.66.lt.1 { 12391 db eval { 12392 SELECT t2.a FROM t1 JOIN t2 USING(a) 12393 WHERE t1.rowid < -9.22337303685477580800e+18 ORDER BY t2.a 12394 } 12395 } {} 12396 do_test boundary3-2.66.lt.2 { 12397 db eval { 12398 SELECT t2.a FROM t2 NATURAL JOIN t1 12399 WHERE t1.rowid < -9.22337303685477580800e+18 ORDER BY t1.a DESC 12400 } 12401 } {} 12402 do_test boundary3-2.66.lt.3 { 12403 db eval { 12404 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 12405 WHERE t2.a=66 12406 ORDER BY t1.rowid 12407 } 12408 } {} 12409 do_test boundary3-2.66.lt.4 { 12410 db eval { 12411 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 12412 WHERE t2.a=66 12413 ORDER BY t1.rowid DESC 12414 } 12415 } {} 12416 do_test boundary3-2.66.lt.5 { 12417 db eval { 12418 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid < t2.r 12419 WHERE t2.a=66 12420 ORDER BY x 12421 } 12422 } {} 12423 do_test boundary3-2.66.le.1 { 12424 db eval { 12425 SELECT t2.a FROM t1 JOIN t2 USING(a) 12426 WHERE t1.rowid <= -9.22337303685477580800e+18 ORDER BY t2.a 12427 } 12428 } {} 12429 do_test boundary3-2.66.le.2 { 12430 db eval { 12431 SELECT t2.a FROM t2 NATURAL JOIN t1 12432 WHERE t1.rowid <= -9.22337303685477580800e+18 ORDER BY t1.a DESC 12433 } 12434 } {} 12435 do_test boundary3-2.66.le.3 { 12436 db eval { 12437 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 12438 WHERE t2.a=66 12439 ORDER BY t1.rowid 12440 } 12441 } {} 12442 do_test boundary3-2.66.le.4 { 12443 db eval { 12444 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 12445 WHERE t2.a=66 12446 ORDER BY t1.rowid DESC 12447 } 12448 } {} 12449 do_test boundary3-2.66.le.5 { 12450 db eval { 12451 SELECT t1.a FROM t1 JOIN t2 ON t1.rowid <= t2.r 12452 WHERE t2.a=66 12453 ORDER BY x 12454 } 12455 } {} 12456 finish_test 12457