Commit Graph

22 Commits

Author SHA1 Message Date
Nikita Sivukhin
4a9292f657 add tests for previously broken case 2025-02-02 02:42:06 +04:00
Glauber Costa
96987db6ca implement is and is not where constraints
The main difference between = and != is how null values are handled.
SQLite passes a flag "NULLEQ" to Eq and Ne to disambiguate that.
In the presence of that flag, NULL = NULL.

Some prep work is done to make sure we can pass a flag instead of a
boolean to Eq and Ne. I looked into the bitflags crate but got a bit
scared with the list of dependencies.
2025-01-31 23:01:49 -05:00
Glauber Costa
effde1cc04 implement isnull / not null for filter expressions
Allow us to write queries like:

	SELECT name, type, sql FROM sqlite_schema where sql isnull

and

	SELECT name, type, sql FROM sqlite_schema where sql not null
2025-01-29 20:58:04 -05:00
Jussi Saurio
ce15ad7d32 Simplify added tests with foreach 2025-01-20 17:30:04 +02:00
Jussi Saurio
f88a4d6ac6 Add jump_if_null to cmp insns to account for either operand being NULL 2025-01-20 16:54:39 +02:00
Jussi Saurio
f8b3b06163 Expr: fix recursive binary operation logic 2025-01-15 14:12:08 +02:00
PThorpe92
183797898b Add tests for nested conditional expressions 2025-01-08 17:19:37 -05:00
Jussi Saurio
925bd62cbc fix logic bug in check_index_scan() that swapped lhs/rhs but not the comparison op 2025-01-08 08:20:13 +02:00
Kould
e5d0ad044e fix: index seek wrong 2025-01-02 11:11:44 +08:00
KaguraMilet
d5d7185995 add between expr tests 2024-12-20 22:49:44 +08:00
jussisaurio
5e9e2dffe9 support TRUE and FALSE in predicates 2024-12-13 22:58:29 +02:00
jussisaurio
e5cf052f07 Why do sqlite btree child keys have <= keys and not < keys 2024-10-06 23:48:59 +03:00
jussisaurio
d8a695a991 rename tests 2024-10-05 18:25:04 +03:00
jussisaurio
ed19f47762 fix 2024-10-05 18:25:04 +03:00
jussisaurio
ff236c7781 Fix not advancing the cell index of pages 2024-10-05 18:25:04 +03:00
김선우
eb55b7379c Fix failing test 2024-09-21 16:12:10 +09:00
김선우
bbd1eea9ae Add support for parenthesized conditions 2024-09-21 16:03:49 +09:00
jussisaurio
d5ade427c2 add test for seekrowid order independence 2024-08-01 17:58:38 +03:00
jussisaurio
700d9ee976 Optimize constant conditions 2024-07-27 15:08:30 +03:00
jussisaurio
016379fea4 core/translate: #154: implement WHERE IN (...) 2024-07-26 18:13:05 +03:00
Bennett Clement
b6c0bf57dc Fix conflicts 2024-07-16 13:16:24 +08:00
Pekka Enberg
75e72a4926 testing: where.test 2024-07-16 07:24:28 +03:00