Pekka Enberg
93d88d6cca
core: Fold columns into column_info in Select struct
...
As a cleanup, fold the columns struct member into column_info by
introducing a `raw_column` in `ColumnInfo` struct.
2024-07-28 10:01:48 +03:00
Pekka Enberg
f34141f725
Merge pull request #236 from penberg/in-list
2024-07-27 12:41:45 +03:00
jussisaurio
19a69e5970
Don't evaluate left side of 'x IN (...)' if right side is empty
2024-07-27 10:55:34 +03:00
jussisaurio
183e0173cd
Rename to talk about true/false conditions instead of success/failure
2024-07-27 10:54:03 +03:00
jussisaurio
016379fea4
core/translate: #154 : implement WHERE IN (...)
2024-07-26 18:13:05 +03:00
Miguel Oliveira
ba9977957b
add docs to pager
2024-07-26 11:27:19 -03:00
jussisaurio
e3cc3da7ca
Implement #216 : order by column number
2024-07-26 14:35:33 +03:00
Pekka Enberg
35dff7ca2c
core: Add module-level docs for translate and vdbe
...
Let's add module-level documentation for the code generator in
`translate` and the virtual machine in `vdbe`, which are two major
subsystems in the database engine that developers work on mostly.
2024-07-26 10:23:47 +03:00
Pekka Enberg
3290b0a168
Merge pull request #228 from penberg/select-cleanups
2024-07-25 21:14:53 +03:00
Pekka Enberg
ec6f0224ef
Merge pull request #224 from ethanniser/add-unicode
2024-07-25 20:37:39 +03:00
Ethan Niser
aa6531f802
add unicode scalar function
2024-07-25 10:05:41 -07:00
Pekka Enberg
9dd505803f
core: Move SortInfo to select.rs
...
It's the only place where it's used.
2024-07-25 17:47:17 +03:00
Pekka Enberg
b25f63f360
core: Move LimitInfo to select.rs
...
That's the only place where it's used.
2024-07-25 17:47:17 +03:00
Pekka Enberg
16e0e740df
core: Rename build_select() to prepare_select()
...
Let's follow SQLite's naming here.
2024-07-25 17:47:17 +03:00
Pekka Enberg
97afd76865
core: Clean up imports in select.rs
2024-07-25 17:47:17 +03:00
Pekka Enberg
a4afadfd2e
core: Select struct documentation
2024-07-25 17:47:17 +03:00
Pekka Enberg
b2f47746a9
core: Move Select struct at the top of select.rs
...
It's the main data structure of the file so let's make it the first one.
2024-07-25 17:27:45 +03:00
Pekka Enberg
351242561d
Kill anyhow usage
...
Switch anyhow to explicit `LimboError` type using thiserror crate, which
lets us make error handling more structured.
2024-07-25 17:15:08 +03:00
Brayan Jules
78568a53e3
fix format issues
2024-07-24 21:09:36 -04:00
Brayan Jules
529770bf32
bench: fix db lock on benchmark code by splitting the scopes between limbo and rusqlite.
2024-07-24 20:48:17 -04:00
Pekka Enberg
be392d1a4c
core: Move translate_select() to select.rs
2024-07-24 21:20:15 +03:00
Pekka Enberg
be91b9aaca
core: Move build_select() to select.rs
2024-07-24 21:13:08 +03:00
Ethan Niser
07d6ebef24
rename SingleRow -> Scalar
2024-07-24 08:53:47 -07:00
jussisaurio
1117aeef74
ORDER BY: support nullable sorting columns and qualified identifiers
2024-07-24 15:27:55 +03:00
Pekka Enberg
8306ccc5a2
Merge pull request #214 from penberg/185-upgrade-sqlite3-parser
2024-07-24 14:13:30 +03:00
jussisaurio
9eb68524e7
Upgrade sqlite3-parser #185
2024-07-24 14:05:39 +03:00
jussisaurio
d50d98d164
Dont return error from introspect_expression_for_cursors on unhandled expr type
2024-07-24 12:17:05 +03:00
jussisaurio
024633a709
Fix #212 : unsupported expression InList
2024-07-24 12:15:34 +03:00
Pekka Enberg
0cb993e152
Merge pull request #204 from jussisaurio/multi-way-join
...
Refactor join processing / support multiway joins
2024-07-24 11:06:32 +03:00
Pekka Enberg
e3fea5cd92
Merge pull request #208 from jussisaurio/fix-agg-functions-on-text
2024-07-24 00:19:33 +03:00
jussisaurio
cc79ff5cfd
Fix #205 : agg functions on text columns
2024-07-23 23:18:01 +03:00
jussisaurio
588ab1af06
Run formatting and enforce formatting in CI
2024-07-23 23:14:36 +03:00
jussisaurio
d05ad6e602
Dont allocate separate vectors in split_constraint_to_terms
2024-07-23 19:34:30 +03:00
gandeevanr
dc01fa4a6f
added support for parsing timezones
2024-07-23 09:19:17 -07:00
gandeevanr
7bb3412e66
added compatibility tests for date
2024-07-23 09:19:17 -07:00
gandeevanr
871fae3286
Implement the Date() method
2024-07-23 09:19:08 -07:00
jussisaurio
84cf4033d5
Refactor join processing
...
- Make all constraints a list of WhereTerms in a ProcessedWhereClause
- Support multiple joins instead of just one
2024-07-23 15:04:40 +03:00
Pekka Enberg
966ee39589
core: Move sorter.rs to vdbe/
2024-07-23 14:54:41 +03:00
Pekka Enberg
e0663f2acf
core: Move insn_to_str() to vdbe/explain.rs
2024-07-23 14:51:52 +03:00
Pekka Enberg
8f00888a6c
core: Move ProgramBuilder to vdbe/builder module
2024-07-23 14:30:31 +03:00
Pekka Enberg
e154fc1826
core: Move vdbe.rs to vdbe/mode.rs
...
Preparation for splitting vdbe.rs into smaller modules.
2024-07-23 14:25:23 +03:00
Brayan Jules
c227001737
support handling functions with the same name but different parameters number
2024-07-22 17:02:36 -04:00
Brayan Jules
b81f7d9acd
add cursor_hint to min and max scalar functions
2024-07-22 17:02:36 -04:00
Brayan Jules
dde00c3bc5
implementation of scalar functions min and max
2024-07-22 17:02:36 -04:00
Pekka Enberg
e33d69189c
Merge pull request #200 from benclmnt/case-insensitive-cols
2024-07-22 17:49:41 +03:00
Joan Martinez
dd34a4c045
bench: fix compilation
2024-07-22 11:42:25 +02:00
Bennett Clement
0bf0b41692
Use case insensitive lookup for table and column
2024-07-22 16:27:36 +08:00
Bennett Clement
5b4bdc8aa3
Fix .schema
...
- Add tests for .schema
- Make command line sql arguments to allow .commands
2024-07-22 16:00:41 +08:00
Pekka Enberg
a5dd8fd92c
core: Move select.rs to translate/
2024-07-21 20:36:56 +03:00
Pekka Enberg
8ce67768e3
core: Move where_clause.rs to translate/
2024-07-21 20:36:56 +03:00