Nikita Sivukhin
63a9fa8c28
fix handling of offset parameter set through variable
...
- before the fix db generated following plan:
turso> EXPLAIN SELECT * FROM users LIMIT ? OFFSET ?;
addr opcode p1 p2 p3 p4 p5 comment
---- ----------------- ---- ---- ---- ------------- -- -------
0 Init 0 16 0 0 Start at 16
1 Variable 1 1 0 0 r[1]=parameter(1); OFFSET expr
2 MustBeInt 1 0 0 0
3 Variable 2 2 0 0 r[2]=parameter(2); OFFSET expr
4 MustBeInt 2 0 0 0
5 OffsetLimit 1 3 2 0 if r[1]>0 then r[3]=r[1]+max(0,r[2]) else r[3]=(-1)
6 OpenRead 0 2 0 0 table=users, root=2, iDb=0
7 Rewind 0 15 0 0 Rewind table users
8 Variable 2 2 0 0 r[2]=parameter(2); OFFSET expr
9 MustBeInt 2 0 0 0
10 IfPos 2 14 1 0 r[2]>0 -> r[2]-=1, goto 14
11 Column 0 0 4 0 r[4]=users.x
12 ResultRow 4 1 0 0 output=r[4]
13 DecrJumpZero 1 15 0 0 if (--r[1]==0) goto 15
14 Next 0 8 0 0
15 Halt 0 0 0 0
16 Transaction 0 1 1 0 iDb=0 tx_mode=Read
17 Goto 0 1 0 0
- the problem here is that Variable value is re-read at step 8 - which is wrong
2025-09-26 18:05:36 +04:00
Pekka Enberg
f88f39082a
core/vdbe: Fix MakeRecord affinity handling
...
The MakeRecord instruction now accepts an optional affinity_str
parameter that applies column-specific type conversions before creating
records. When provided, the affinity string is applied
character-by-character to each register using the existing
apply_affinity_char() function, matching SQLite's behavior.
Fixes #2040
Fixes #2041
2025-09-08 18:49:13 +03:00
bit-aloo
a3b87cd97f
add review comments
2025-08-26 19:56:25 +05:30
meteorgan
6262ff4267
support offset for values
2025-08-01 00:46:46 +08:00
meteorgan
aa69b279c3
support limit
2025-07-28 00:58:20 +08:00
meteorgan
ea660b947d
support VALUES clauses for compound select
2025-07-27 19:13:23 +08:00
Nikita Sivukhin
be0a607ba8
rename amount -> extra_amount
2025-07-16 00:46:17 +04:00
Nils Koch
2827b86917
chore: fix clippy warnings
2025-06-23 19:52:13 +01:00
pedrocarlo
6596ee28a8
introduce EphemeralTable query destination
2025-06-20 16:30:21 -03:00
Jussi Saurio
07fa3a9668
Rename SelectQueryType to QueryDestination
2025-05-25 21:23:04 +03:00
Jussi Saurio
d893a55c55
UNION
2025-05-25 21:23:04 +03:00
meteorgan
01c8a4ca63
simpify values when it's subquery
2025-05-23 17:45:56 +08:00
meteorgan
34e05ef974
make values work in subquery
2025-05-23 00:30:04 +08:00
meteorgan
0467d7e11b
Support values statement and values in select
2025-05-23 00:29:54 +08:00