Ankush Rayabhari
8d1c86f192
Added support for casting to DATE
2020-08-31 20:42:08 -07:00
Mike Siomkin
7b22ee8ecb
Add support of CAST(expression AS datatype(length))
...
CAST(expression AS datatype(length)) construction is a part of
ANSI SQL-92 standard. So we have to support it.
2020-06-16 22:39:00 +03:00
Tobias Nack
e8ce1c4caf
Add support to identify different set operators & allow chain of multiple set operators ( #138 )
2020-02-18 14:26:10 +01:00
Till Later
4b617bca96
Adds simple transaction commands ( #137 )
2020-01-14 13:21:19 +01:00
Daniel Lindner
e3cfc80975
Add COPY for import and export ( #139 )
2020-01-08 16:21:02 +01:00
mrks
a4703fec5b
Add DESCRIBE ( #131 )
2019-09-16 11:58:05 +02:00
mrks
755ea052d7
Remove HISTORY keyword ( #129 )
2019-07-31 12:43:18 +02:00
d-justen
de4f81bb18
Support Create Table As Syntax ( #127 )
...
* support create table as select statement
* Generate bison code
* add test
2019-06-07 11:42:49 +02:00
Julian Menzler
6003ab58d1
Support WITH ( #125 )
...
* Add struct WithDescription in SelectStatement.h
* Add test for With statements
* Implement With draft
* tm
* Fix Grammar
* Fix commented code
* naming improvements
* naming improvements
* introduce memory leak1
* removed memory leak
* Create two WITH-tests
* Add bad queries reg. WITH
2019-05-24 16:42:28 +02:00
Leander Neiss
e0e58d0876
Allow Expressions in LIMIT and OFFSET. ( #111 )
...
* Allow Expressions in LIMIT and OFFSET.
* Make NULL distinguishable from nullptr (not present) for LIMIT and OFFSET.
2019-04-04 12:25:15 +02:00
mrks
1b86e5e624
Make parameters for execute optional ( #107 )
2018-11-23 11:10:31 +01:00
alkim0
a59deb43c3
Added boolean literal support ( #103 )
...
* Added boolean support
* Made bool literals int vals
With a flag indicating if they came from boolean literals.
* Add makeLiteral(bool val);
2018-11-02 11:42:23 +01:00
mrks
f7bd4ee592
Support more of the CREATE TABLE command ( #101 )
...
* Support more of the CREATE TABLE command
* bison version
* build on nemea
* bla
* Check for flex version
2018-10-19 14:18:03 +02:00
mrks
79bdad949f
Remove PART keyword ( #100 )
...
* Remove PART keyword
* Change it in some tests
2018-10-10 16:33:53 +02:00
Tim Zimmermann
1f564e16b8
Add tests for SUBSTR support ( #96 )
...
* Add test for SUBSTR support
* Trigger CI
* Trigger
* Trigger
* Trigger
* Remove CMake file
2018-05-30 17:52:56 +10:00
Moritz Eyssen
73ed061d7d
Support EXTRACT ( #95 )
...
* EXTRACT support
* formatting
* formatting
* formatting
2018-05-23 03:02:14 +02:00
Moritz Eyssen
82e73f66d2
No FROM required ( #94 )
2018-05-22 15:35:39 +02:00
Falco Duersch
2ff32fbee3
Extend table alias with column renames: "AS tbl(c0, c1)"
2018-02-12 11:28:36 +01:00
Moritz Eyssen
c43af4b401
Update bison_parser.y
2018-02-08 16:46:30 +01:00
javrucebo
cdd271490b
Allow more variations of LIMIT/OFFSET
...
In addtion to already supported LIMIT/OFFSET variants allow more to be parsed
Legacy:
- LIMIT int
- LIMIT int OFFSET int
Enhancement:
- OFFSET int (no limit)
- LIMIT ALL (no limit)
- LIMIT NULL (no limit)
- LIMIT ALL OFFSET int (no limit, but offset)
- LIMIT NULL OFFSET int (no limit, but offset)
Also ensures negative limits / offsets are set to kNoLimit/kNoOffset
2018-01-27 00:33:23 +01:00
mrks
5fa5a94c9e
Merge branch 'master' into operator-equals
2018-01-24 14:20:23 +01:00
mrks
ac9a742fce
Rearrange order of join types
2018-01-23 13:39:42 +01:00
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
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
Lawrence
a578842117
Fix order of table_ref
2018-01-17 16:47:57 +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
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
7da22a8bb1
fix %destructor of table_n
2017-09-13 21:59:15 +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
0233f77cef
Add support for SHOW TABLES statement
2017-08-23 23:56:16 +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
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
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
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
074c564cc4
move initialization of SQLParserResult to SQLParser from bison_parser
2017-04-07 16:07:14 +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
39d0dbd9af
Implement CREATE VIEW and DROP VIEW
2017-03-08 17:42:33 +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