Commit Graph

172 Commits

Author SHA1 Message Date
root bdc9a4b939 fix clang++ errror report 2017-09-13 22:21:09 +08:00
root 7da22a8bb1 fix %destructor of table_n 2017-09-13 21:59:15 +08:00
root 4e3be32ba0 cancel empty from clause support 2017-09-13 18:24:41 +08:00
root 45cae0bb0b cancel empty from clause support 2017-09-13 18:12:29 +08:00
root 1922210f70 1. add scheme name support for tables names
2. add IF EXIST support for DROP TABLE/VIEW
3. fix memory free bug: delete -> free
4. add features in sqlhelper.cpp
2017-09-13 17:37:31 +08:00
Markus Dreseler 68e4d1b207 Make UPDATE use expression, not literal
This allows for things like UPDATE x SET a = a + 1
2017-09-12 19:50:34 +02:00
Tim Zimmermann 2316e07d52 Do not allow deprecated features for flex 2017-09-05 10:25:39 +00:00
Tim Zimmermann 0233f77cef Add support for SHOW TABLES statement 2017-08-23 23:56:16 +02:00
Pedro Flemming f815247510 Add documentation about missing features (#56) 2017-08-14 15:13:56 +02:00
alkim0 88ffe4822b Many updates to grammar including support for arrays, ilike, natural joins with no predicates... (#49)
* Got ISNULL working

* Allow function calls with no arguments

* Added no-else cases and arrays

* Added more operations including ilike, concat

* Added optional all to set operations and fixed natural join

* Ran astyle

* Used the appropriate star expression

Instead of using a ColumnRef with star literal.

* NULL expressions now returns true isLiteral

* Fixed structure for no-else case clauses

* Fixed up grammar conflicts
2017-07-26 19:09:02 +02:00
Pedro Flemming 69d96061b2 Add tokenize method to SQLParser to output the list of tokens (#54)
Added tokenize benchmark. Restructured Makefile
2017-07-21 02:47:45 +02:00
Nan Xiao 12e35dcd63 Fix bug in print kExprFunctionRef expression. (#53)
* Fix bug in print kExprFunctionRef expression.

* Support print "groupBy" member in printSelectStatementInfo function.
2017-07-19 22:20:05 +02:00
Tim Zimmermann 6a05b8e94b Add enum types for formerly 'simple' operands (#48)
* Add enum types for formerly 'simple' operands

* Use non-semantic names

* Formatting

* Add generated files
2017-06-29 13:40:24 +02:00
Tim Zimmermann 8913f9213d Fix: use correct format specifiers for int64 (#45)
* Fix: use correct format specifiers for int64
* Use iostream instead of stdio
2017-06-14 22:46:43 +02:00
Pedro Flemming 09a96a9c88 Update bison source code 2017-06-06 22:15:19 +02:00
Pedro Flemming 1483a4a95a Add Hints per statement to SQL syntax. 2017-06-06 22:15:19 +02:00
Pedro Flemming f85a5e7b52 Prepared Statements (#43)
Changed PREPARE syntax to be closer to the standard.
2017-05-29 16:22:13 +02:00
Pedro Flemming 128cd74670 fix token generator for negative numbers (#41) 2017-04-25 17:25:00 +02:00
Pedro Flemming 793258f872 Add capability for multi join table references (#40) 2017-04-21 22:03:12 +02:00
Pedro Flemming 0909c6a89a Documentation & Result Move Constructor (#39)
Updates documentation, adds a move constructor to SQLParserResult, fixes compile-time warnings
2017-04-21 16:15:07 +02:00
Pedro Flemming 927c8ec40a add tests and benchmarks for prepare and execute 2017-04-09 13:34:51 +02:00
Pedro Flemming e94e80e674 add various utility methods to SQLParserResult like releaseStatements 2017-04-08 03:18:58 +02:00
Pedro Flemming cfe69a44de update parser sources 2017-04-07 16:26:20 +02:00
Pedro Flemming e16925e7a5 add parseSQLString method with output parameter instead of return value 2017-04-07 16:16:25 +02:00
Pedro Flemming 074c564cc4 move initialization of SQLParserResult to SQLParser from bison_parser 2017-04-07 16:07:14 +02:00
Pedro Flemming e6cd70f029 move sqlhelper into util/. Add convenience methods 2017-04-07 15:47:51 +02:00
Pedro Flemming 1a97db687b update parser and lexer 2017-04-06 18:28:22 +02:00
Pedro Flemming de48a0bafd adjust define guard namings 2017-04-06 18:27:47 +02:00
Pedro Flemming 7bce903eb8 fix various const constraints and comments 2017-04-06 17:42:46 +02:00
Pedro Flemming eddd799c26 rename operators to match constant naming style. Move the enum out of Expr 2017-04-06 17:25:47 +02:00
Pedro 137f273410 update parser build 2017-03-08 20:36:06 +01:00
Pedro 3e52bf1a66 Add test for grammar conflicts. Print summary at the end of tests 2017-03-08 19:28:25 +01:00
Pedro 39d0dbd9af Implement CREATE VIEW and DROP VIEW 2017-03-08 17:42:33 +01:00
Pedro 9a5a352a0b add explicit test to TPC-H query properties 2017-03-08 16:55:29 +01:00
Pedro a0e55035fd Implement NOT EXISTS 2017-03-07 15:53:22 +01:00
Pedro 177901816f add more join types 2017-03-07 15:49:49 +01:00
Pedro b4adfa5b74 implement IN operator 2017-03-07 15:44:44 +01:00
Pedro bf255c65ac fix memory leaks 2017-03-07 15:09:39 +01:00
Pedro b7828e698e implement CASE WHEN expressions 2017-03-07 14:55:51 +01:00
Pedro 5605dbab7e implement EXISTS conditional 2017-03-07 14:37:19 +01:00
Pedro cf1c84d46d Add select statement as possible operand in expressions 2017-03-07 14:22:52 +01:00
Pedro 35b8b569eb Implement BETWEEN operator 2017-03-07 13:49:56 +01:00
Pedro 9ecfa8e8f6 Allow function expressions to have variable length of parameters 2017-03-07 02:51:04 +01:00
Pedro f82504b319 Allow order by to define a list of expressions to order by 2017-03-07 02:30:44 +01:00
Pedro 36adab70c5 add 10 tpch style queries and test for them 2017-03-07 02:01:00 +01:00
Pedro Flemming 42049b4d56 Benchmarking (#27)
Adds benchmarking capabilities and small grammar fix.
2017-03-06 18:30:35 +01:00
Pedro de56d9a7ea fix error in parser destructor 2017-02-10 21:42:02 +01:00
Pedro Flemming 2890cd368e fix example for recent API changes 2017-02-08 13:51:50 +01:00
Pedro Flemming d576350e1e add auto memory leak check with valgrind to test script 2017-02-08 11:59:24 +01:00
Pedro 1f183147ec fix memory leaks when parsing fails 2017-02-08 04:56:07 +01:00