Commit Graph

188 Commits

Author SHA1 Message Date
javrucebo 66688f7199 Adjust Table Join Types
Consolidate LeftOuter/Left and RightOuter/Right as they are
by definition the same.
Similar consolidate FullOuter/Outer/Full ... with Outer (as in the
parser) not part of standard, but "full" missing. Allowing all three.

This commit potentially breaks other programs as kJoinLeftOuter and kJoinRightOuter
are eliminated
2018-01-22 20:44:33 +01:00
mrks 314d697fa2
Merge branch 'master' into fix_ref_table_order 2018-01-18 10:13:34 +01:00
Lawrence a578842117 Fix order of table_ref 2018-01-17 16:47:57 +01:00
Lawrence 2f5502cb93
Fix typo 2018-01-17 16:05:42 +01:00
Lawrence 1425deb75d Merge master 2018-01-17 15:53:23 +01:00
Lawrence 77e396703f Add stringLength information to hsql::Statement 2018-01-17 15:43:38 +01:00
Moritz Eyssen 074bce4d90 dix and adapt casecasewhen 2018-01-17 13:11:39 +01:00
javrucebo daf8fe7a45 Changing Grammar to extend CASE WHEN statement:
- allow multiple WHEN statements
- allow for syntax like `CASE x WHEN 1 THEN 2 WHEN 3 THEN 4 ELSE 5 END`
NOTE: This changes also the way the CASE operator is stored:
- CASE [expr] exprList [ELSE expr2] END
- exprList holds each of the WHEN statements with:
  expr := WHEN, expr2 := THEN

Added also tests in test/select_tests.cpp
and adapted the existing one to reflect the new storage
2018-01-16 00:45:55 +01:00
mrks 4d36a1d426 Merge branch 'master' into print-op-expr 2017-10-24 15:20:53 +02:00
mrks 6a192cdf17 Merge branch 'master' into feature/schema_and_if_exists_for_drop 2017-10-20 14:12:58 +02:00
Moritz Eyssen fe157ec830 Merge with master 2017-10-13 11:27:44 +02:00
Moritz Eyssen 0d0ba53546 Formatting and more tests 2017-10-12 19:18:38 +02:00
root cf28f8fdaf space format 2017-09-29 17:19:39 +08:00
root d220ff47ab add drop test case in test/queries/queries-good.sql 2017-09-29 17:15:18 +08:00
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
Nan Xiao 165583a60b Print exprList in printOperatorExpression 2017-08-03 14:55:44 +08:00
Nan Xiao e7c2833e43 Initialize all fields in Expr struct 2017-08-01 13:58:22 +08: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