Commit Graph

342 Commits

Author SHA1 Message Date
javrucebo 66804a6281 Allow '==' to be parsed as equal operator in expressions.
SQLite allows for this and it is in the same spirit as allowing both != and <>
for non equality.
(see https://sqlite.org/lang_expr.html#collateop)
2018-01-22 18:54:52 +01:00
javrucebo 9872603fe7
Merge pull request #1 from hyrise/master
Update from original
2018-01-22 18:19:26 +01:00
mrks edaba87af7
Merge pull request #78 from lawben/fix_ref_table_order
Fix order of table references in multi table FROM
2018-01-18 10:37:57 +01:00
mrks 314d697fa2
Merge branch 'master' into fix_ref_table_order 2018-01-18 10:13:34 +01:00
mrks fe51c9e4f7
Merge pull request #77 from lawben/master
Add stringLength information to Statement
2018-01-18 10:04:10 +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
mrks 0fc6dafc4d
Merge pull request #76 from hyrise/fix_casewhenwhen
Changing Grammar to extend CASE WHEN statement
2018-01-17 15:34:34 +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 59140d573e Merge pull request #59 from NanXiao/print-op-expr
Print exprList in printOperatorExpression
2017-10-24 15:26:00 +02:00
mrks 4d36a1d426 Merge branch 'master' into print-op-expr 2017-10-24 15:20:53 +02:00
mrks 0c574335cd Merge pull request #70 from hyrise/feature/schema_and_if_exists_for_drop
Schema for Table Refs; IF EXISTS for Drop
2017-10-20 14:51:19 +02:00
mrks 6a192cdf17 Merge branch 'master' into feature/schema_and_if_exists_for_drop 2017-10-20 14:12:58 +02:00
mrks bbf502f104 Merge pull request #71 from hyrise/build/static_library
Static Library Build
2017-10-20 14:12:43 +02:00
Moritz Eyssen fe157ec830 Merge with master 2017-10-13 11:27:44 +02:00
Moritz Eyssen 0d59785ec8 refactor makefile a bit 2017-10-13 11:25:40 +02:00
Moritz Eyssen aa4dc099a0 Add DropTableIfExistsStatementTest 2017-10-12 20:19:59 +02:00
Moritz Eyssen 09f821e383 Add test for schema ref in FROM 2017-10-12 20:07:30 +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
mrks 6dade78794 Merge pull request #67 from hyrise/fix/expr-for-update
Make UPDATE use expression, not literal
2017-09-12 11:00:37 -07: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
mrks 8a50ef7a52 Merge pull request #65 from timzimmermann/fix/flex-deprecated-features
Do not allow deprecated features for flex
2017-09-06 15:32:16 +02:00
Tim Zimmermann f5f7f8b408 Build flex with current version 2017-09-06 13:22:03 +00:00
Tim Zimmermann cace5319b9 Link binaries 2017-09-06 13:10:25 +00:00
Tim Zimmermann daf5250df6 Switch to gcc5, provide stdlib for clang builds
Trying to fix CI
2017-09-06 13:03:36 +00:00
Tim Zimmermann 5346810e67 Switch to C++1z 2017-09-05 10:55:46 +00:00
Tim Zimmermann 2316e07d52 Do not allow deprecated features for flex 2017-09-05 10:25:39 +00:00
mrks 6edc862d97 Merge pull request #63 from timzimmermann/feature/show-tables
Add support for SHOW TABLES & SHOW COLUMNS statement
2017-08-24 15:47:19 +02: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
Nan Xiao 2b27b27554 Support build static library in Makefile. 2017-07-28 15:49:38 +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
Pedro Flemming fe35651bb5 Switch to MIT License (#52) 2017-07-07 17:43:44 +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 0939a8d6cd Enable -Werror (#47) 2017-06-14 20:17:22 +02:00