43 Commits

Author SHA1 Message Date
Dan Spencer
4b76b7fe81 Add conversion methods to ColumnValueOps 2015-04-13 06:46:18 -06:00
Dan Spencer
ba3f05eb0e Query planner solves aggregate function calls! 2015-04-13 04:34:20 -06:00
Dan Spencer
172d98a5b8 Initialize env_logger to CLI 2015-04-13 04:34:19 -06:00
Dan Spencer
6e06d129b7 Fix indentation in SExpression format 2015-04-13 04:34:19 -06:00
Dan Spencer
56c7013c51 GroupInfo; more aggregate work 2015-04-13 04:34:19 -06:00
Dan Spencer
5da5d8a77f Change Compiler into QueryCompiler, new one for each query and subquery
Add query id
2015-04-13 04:34:19 -06:00
Dan Spencer
f4d0841224 Use incrementing source id variable inside Compiler, not callback 2015-04-13 04:34:19 -06:00
Dan Spencer
a4404ce2fe Move SELECT compilation into its own method 2015-04-13 04:34:19 -06:00
Dan Spencer
8a5d628bba Simplify SourceScope
Replace ColumnNames with Vec<Identifier>
Make fields private
2015-04-13 04:34:18 -06:00
Dan Spencer
f7c347a7ce Don't build FROM+WHERE from SourceScope data 2015-04-13 04:34:18 -06:00
Dan Spencer
67e13d6298 Refactor query plan compiler into a Compiler type 2015-04-13 04:34:18 -06:00
Dan Spencer
8788fc4a01 Move FROM and WHERE compilation to its own function 2015-04-13 04:34:18 -06:00
Dan Spencer
f85dd49dee ColumnValue requires Eq and Hash traits, add GroupBuckets 2015-04-13 04:34:18 -06:00
Dan Spencer
c378a78900 Add F64NoNaN type 2015-04-13 04:34:18 -06:00
Dan Spencer
f97cd59c98 Change Group::iter() to iterate Cow instead of Box 2015-04-06 03:17:48 -06:00
Dan Spencer
070193303f Start implementing TempGroupBy and AggregateOp 2015-04-06 01:27:01 -06:00
Dan Spencer
b062645798 Rustup 2015-04-05 00:58:29 -06:00
Dan Spencer
b325f3c064 Implement boolean logic using three-valued logic (3VL) 2015-04-04 11:09:04 -06:00
Dan Spencer
3da60e6c29 Add Group trait, used to yield rows and perform aggregate functions. 2015-03-31 19:41:38 -06:00
Dan Spencer
71eda59e5c Fix key-length offset bug 2015-03-30 15:49:19 -06:00
Dan Spencer
6cbb4d76b0 Add hardcoded test data to the CLI. 2015-03-30 15:39:47 -06:00
Dan Spencer
78de644036 Update README 2015-03-30 13:02:14 -06:00
Dan Spencer
972b1f4864 Add EXPLAIN statement 2015-03-30 13:02:14 -06:00
Dan Spencer
49b9c5b6ca Improve variant casting 2015-03-30 13:02:14 -06:00
Dan Spencer
1b3ec70530 Add pretty SELECT table to cli 2015-03-30 13:02:13 -06:00
Dan Spencer
ea37d82c25 Added a basic CLI interface, somewhat functional. 2015-03-30 07:38:56 -06:00
Dan Spencer
acfdf69e0c Remove as_slice() in favor of implicit derefs 2015-03-29 20:08:21 -06:00
Dan Spencer
a088773778 Rustup 2015-03-29 20:08:20 -06:00
Dan Spencer
372b0fca42 Query plan execution now works, for the most part 2015-03-29 20:08:19 -06:00
Dan Spencer
5ce2f7e56f Add bytes conversion methods to ColumnValueOps, update Variant 2015-03-29 20:08:18 -06:00
Dan Spencer
4f3cc3b17a Rename ColumnValue to Variant 2015-03-29 20:08:17 -06:00
Dan Spencer
7e8bdd3838 Add some binary operators to ColumnValueOps 2015-03-29 20:08:16 -06:00
Dan Spencer
0372b5d3fe Move ExecuteQueryPlan to queryplan module 2015-03-29 20:08:15 -06:00
Dan Spencer
5b921a24ba Add DatabaseStorage 2015-03-29 20:08:14 -06:00
Dan Spencer
fca0f84f64 Make SExpression and DatabaseInfo::ColumnValue implement Clone 2015-03-29 20:08:13 -06:00
Dan Spencer
bb6859747a Add EXPLAIN keyword to lexer 2015-03-29 20:08:12 -06:00
Dan Spencer
8c9037b7b2 Remove some compiler warnings 2015-03-29 20:08:11 -06:00
Dan Spencer
718bb72d81 Replace SourceId with u32 2015-03-29 20:08:10 -06:00
Dan Spencer
bb67fc01c8 Lots of progress on the parser and documentation. Expression subqueries work. 2015-03-29 20:07:16 -06:00
Dan Spencer
01bfa50153 Parse ORDER BY in SELECT statements 2015-03-10 10:41:03 -06:00
Dan Spencer
e1ace3c5d1 Parse inner and outer joins in SELECT statements 2015-03-10 09:00:38 -06:00
Dan Spencer
cb085daea1 Remove NoMoreTokens error in favor of Expecting. 2015-03-10 08:18:41 -06:00
Dan Spencer
0e112cfc1c Initial commit 2015-03-10 08:07:47 -06:00