Pekka Enberg
e33d69189c
Merge pull request #200 from benclmnt/case-insensitive-cols
2024-07-22 17:49:41 +03: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
Bennett Clement
4590c3cc7c
Support select <columns> for order by operation
2024-07-22 00:28:27 +08:00
Bennett Clement
2e0d4c6fdb
Implement basic ORDER BY
...
- Only SELECT * is supported
- Only ASC is supported
2024-07-22 00:28:00 +08:00
JeanArhancet
50c12d24c8
feat: add length scalar function
2024-07-21 16:30:40 +02:00
JeanArhancet
569322446a
feat: add round scalar function
2024-07-21 10:29:30 +02:00
JeanArhancet
fd5dd4f3e7
feat: add trim scalar function
2024-07-20 11:46:37 +02:00
Brayan Jules
73c8fc23ba
implementation of scalar functions upper and lower
2024-07-19 00:38:12 -04:00
jussisaurio
70953a4fd0
Left join initial nested loop implementation
2024-07-18 10:55:27 +03:00
Brayan Jules
b7c08b8fd5
feat: abs func initial implementation
2024-07-17 22:55:41 -04:00
Pekka Enberg
ad70a240d4
Merge pull request #147 from benclmnt/feat/where-and
2024-07-16 21:35:01 +03:00
Bennett Clement
3c4f2b07e6
Respect jump_if_true in like implementation
2024-07-16 18:17:37 +08:00
Bennett Clement
6f983702c3
Refactor if/ifnot implementation
2024-07-16 16:36:30 +08:00
Bennett Clement
05558527af
Implement like in where clause
2024-07-16 15:55:33 +08:00
Bennett Clement
2f738e0c8b
Implement like function
2024-07-16 15:23:52 +08:00
Bennett Clement
b6c0bf57dc
Fix conflicts
2024-07-16 13:16:24 +08:00
Pekka Enberg
190e5844e7
testing: select.test
2024-07-16 07:26:44 +03:00
Pekka Enberg
fbe71cc1d7
testing: pragma.test
2024-07-16 07:24:28 +03:00
Pekka Enberg
ce1efa35eb
testing: agg-functions.test
2024-07-16 07:24:28 +03:00
Pekka Enberg
75e72a4926
testing: where.test
2024-07-16 07:24:28 +03:00
Pekka Enberg
9fc48315cc
testing: coalesce.test
2024-07-16 07:20:35 +03:00
Pekka Enberg
04b96a3d6c
testing: join.test
2024-07-16 07:20:34 +03:00
Bennett Clement
4d077cf3e5
Implement std::cmp::PartialOrd for OwnedValue
2024-07-16 08:32:14 +08:00
Bennett Clement
fdf77cee2b
Merge branch 'main' of github.com:benclmnt/limbo into feat/where-and
2024-07-16 08:10:24 +08:00
Pere Diaz Bou
0a7d0588d7
core: implement AND and OR + complex conditions.
...
this also fixes NULL print to empty string
Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com >
2024-07-15 19:42:12 +02:00
Bennett Clement
f955187b70
Implement where and
2024-07-15 23:36:35 +08:00
jussisaurio
d1eded0e90
Test with sqlite3 executable in CI as well
2024-07-15 17:27:04 +03:00
Pekka Enberg
4751820b2b
testing: Move test harness to tester.tcl
...
Move the generic test harness part into a separate file.
2024-07-15 08:19:21 +03:00
jussisaurio
ea793e4126
Inner join, table aliases, qualified column names
2024-07-14 20:09:40 +03:00
jussisaurio
851aea212d
add coalesce(), refactor/rename add_label()
2024-07-13 23:03:56 +03:00
Ramkarthik Krishnamurthy
59b1852d41
Adds test for string_agg
2024-07-13 10:59:46 +05:30
Ramkarthik Krishnamurthy
a303e6ad96
Implements string_agg and extends group_concat to work with column delimiters
2024-07-13 02:13:28 +05:30
Ramkarthik Krishnamurthy
9268560a51
Implements group concat aggregate function
2024-07-13 00:55:40 +05:30
Pekka Enberg
55adf93282
Fix broken WHERE clause test case
...
The broken test case does not pass on SQLite so it's wrong. I suspect
the test was written before commit e377e09 ("Fix avg(), total(), count()
default value on empty set") when Limbo showed this behavior.
2024-07-12 08:22:13 +03:00
jussisaurio
1b0aa568a4
Basic where clause support
2024-07-12 00:26:32 +03:00
Bennett Clement
8a9eb74f9b
Implement total() aggregation function
...
- Returns 0.0 when called on non integer / non float columns
- Always returns floating point number
- fix: default for sum() should be NULL when there is no non-NULL row
per docs
2024-07-11 23:40:55 +08:00
Pere Diaz Bou
538d624770
core: apply Real affinity on columns stored as int
...
Values in sqlite3, as expected, can be stored in different formats to
optimize disk usage. In this case, a 79.0 float will be transformed to a
u8.
sqlite3 deals with this by adding a RealAffinity op after each column
that might need it. Therefore, in this pr we do exactly that :).
Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com >
2024-07-10 21:21:49 +02:00
Pere Diaz Bou
90a4fc6bb8
test: cross-join-specific-columns
...
Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com >
2024-07-09 18:08:16 +02:00
Pere Diaz Bou
e0431fdde1
testing: update testing with products table and cross join test
...
Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com >
2024-07-09 18:08:16 +02:00
mazchew
fc0c3d539a
add min aggregate function
...
add changes for all.test
2024-07-09 03:14:02 +08:00
mazchew
3f339d07d3
add max aggregate function
2024-07-09 02:45:34 +08:00
Vivek Khatri
fe7c1b5b1d
Merge branch 'main' into add-agg-fn-count
2024-07-08 13:58:14 +05:30
Vivek
94358dc665
Add aggregate fn: count
2024-07-08 13:55:06 +05:30
Piotr Sarna
9376d68f73
testing: add a test for limit 0
2024-07-06 10:58:19 +02:00
Pekka Enberg
5b12e7af78
Add TCL tests for avg() and sum()
2024-07-03 11:50:22 +03:00
Pekka Enberg
106fe5f259
Generate testing.db with age column
2024-06-30 19:24:38 +03:00
Pekka Enberg
962ead96fc
Use Faker API in gen-database.py to generate random integer
2024-06-30 19:24:13 +03:00
Pekka Enberg
1573844680
Make all.test exit with failure if test fails
2024-06-30 17:35:05 +03:00
Pere Diaz Bou
1419ae93bc
gen-database: add age to user table to test agg
...
Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com >
2024-06-30 12:48:19 +02:00