Commit graph

779 commits

Author SHA1 Message Date
Riccardo Azzolini
d19c6c323c
Fix escaping of trailing quote in quoted identifiers (#505)
* Generalize EscapeSingleQuoteString to arbitrary quote character

* Fix escaping of trailing quote in quoted identifiers

* Add new tests instead of modifying existing tests
2022-05-27 06:25:24 -04:00
Maciej Obuchowski
cc2559c097
hive: add create function syntax (#496)
Signed-off-by: Maciej Obuchowski <obuchowski.maciej@gmail.com>
2022-05-26 17:30:10 -04:00
Riccardo Azzolini
0fa812bd2b
Fix parsing of COLLATE after parentheses in expressions (#507) 2022-05-25 16:10:38 -04:00
Riccardo Azzolini
901f5b974f
Distinguish between tables and nullary functions in FROM (#506) 2022-05-25 16:01:13 -04:00
Maciej Skrzypkowski
cd66034a4a
MERGE INTO semicolon handling (#508)
* SGA-4181 MERGE INTO semicolon handling

* fixed lint warning

Co-authored-by: Maciej Skrzypkowski <maciej.skrzypkowski@satoricyber.com>
2022-05-25 15:48:15 -04:00
mao
09bdb6bb8a
Support placeholders ($ or ?) in LIMIT clause (#494)
* fix: limit $1

* feat: test limit $1

* Update Cargo.toml

* cargo fmt

Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
2022-05-25 15:40:30 -04:00
Dmitry Patsura
2c0886d9fe
feat: Support escaped string literals (PostgreSQL) (#502)
* feat: Support escaped string literals (PostgreSQL)

Signed-off-by: Dmitry Patsura <talk@dmtry.me>

* lint

* escape ', \r, \t

* Update src/ast/value.rs

Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>

* Update src/tokenizer.rs

Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>

* test: two slashes

* remove dead code

* test: parsing error

* support generic dialect too (for DF)

Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
2022-05-25 14:42:14 -04:00
Dmitry Patsura
4070f3ec6e
feat: Convert IS TRUE|FALSE to expression (#499) 2022-05-24 09:26:50 -04:00
George Andronchik
a6d7a35dac
feat: support DISCARD [ALL | PLANS | SEQUENCES | TEMPORARY | TEMP] (#500) 2022-05-22 15:44:53 -04:00
Maciej Obuchowski
7ab30d95b0
hive: add support for array<> (#491)
Signed-off-by: Maciej Obuchowski <obuchowski.maciej@gmail.com>

Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
2022-05-22 15:38:24 -04:00
Maciej Obuchowski
74f92079ac
set: allow negative ident values (#495)
Signed-off-by: Maciej Obuchowski <obuchowski.maciej@gmail.com>
2022-05-22 15:33:07 -04:00
Andrew Lamb
85e0e5fd39
Add docs for MapAccess (#489)
* Add docs for `MapAccess`

* fix: fmt

* Apply suggestions from code review

Co-authored-by: Dmitry Patsura <zaets28rus@gmail.com>

* touchup

Co-authored-by: Dmitry Patsura <zaets28rus@gmail.com>
2022-05-22 15:26:06 -04:00
Andrew Lamb
11046f66e7
Correct typo: indexs to indexes (#492) 2022-05-22 15:03:48 -04:00
Alex Yaroslavsky
dd805e9a6b
Support unicode whitespace (#482)
* Support unicode whitespace

* Add test
2022-05-15 14:58:56 -04:00
Yoshiyuki Komazaki
97a148aee4
Add BigQuery dialect (#490) 2022-05-10 10:25:27 -04:00
Andrew Lamb
484a7b6da4 (cargo-release) version 0.17.0 2022-05-10 09:26:00 -04:00
Andrew Lamb
acd60d169d
Update changelog for 0.17.0 (#488)
* Update changelog for 0.17.0

* add reference to #466

* Updates for recent merges
2022-05-10 09:23:04 -04:00
Maciej Skrzypkowski
9750841a66
Parse merge source as table factor (#483)
* Parse source of MERGE as table_factor

Some MERGE queries need a table as a soruce,
added proper test showing it

* Clippy fix

Co-authored-by: Maciej Skrzypkowski <maciej.skrzypkowski@satoricyber.com>
2022-05-10 06:34:45 -04:00
yuval-illumex
35f5f0be4d
Redshift - Add support in sharp as start of the field name (#485)
* Add support in sharp

* CR Review
2022-05-10 06:34:01 -04:00
Poonai
ed86c6d53d
add support for postgres composite types (#466)
* add support for postgres composite types

Signed-off-by: password <rbalajis25@gmail.com>

* fix composite test for bigdecimal feature

Signed-off-by: password <rbalajis25@gmail.com>
2022-05-09 15:12:22 -04:00
Alex Qyoun-ae
6b2fc8102f
feat: Support TABLE keyword with SELECT INTO (#487) 2022-05-09 14:29:43 -04:00
Maciej Obuchowski
6d057ef4df
set: allow dots in variables by moving to ObjectName (#484)
Signed-off-by: Maciej Obuchowski <obuchowski.maciej@gmail.com>
2022-05-09 14:21:20 -04:00
Maciej Obuchowski
835bb2f9ad
into keyword is optional (#473)
Signed-off-by: Maciej Obuchowski <obuchowski.maciej@gmail.com>
2022-05-09 13:08:24 -04:00
Dmitry Patsura
8ef5fc8624
feat: Support ANY/ALL operators (#477)
* feat: Support ANY/ALL operators

* fix lint
2022-05-06 13:32:04 -04:00
Dmitry Patsura
e68bdae5f2
feat: Allow ArrayIndex for GenericDialect (#480)
* feat: Allow ArrayIndex for GenericDialect

* test array index with generic dialect too
2022-05-04 20:20:45 -04:00
Maciej Skrzypkowski
7fc6361fe8
Add Redshift dialect, handle square brackets properly (#471)
* Redshift square bracket handling

We need to detect `[` or `"` for Redshift quotes around indentifier and at the same time exclude
treating JSON paths as indentifer

* RedshiftSqlDialect documentation update

Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>

* Renamed _chars to chars

* Fixed warnings

* Missing license

Co-authored-by: Maciej Skrzypkowski <maciej.skrzypkowski@satoricyber.com>
Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
2022-05-04 11:11:00 -04:00
Andrew Lamb
a9d7f7af1f
Improve docs for KILL statement (#481) 2022-05-02 17:49:06 -04:00
Dmitry Patsura
f5980cd30f
feat: Support KILL statement (#479) 2022-05-02 14:04:33 -04:00
yuval-illumex
7732c34b19
Add support in IS boolean filter (#474)
* Add support in IS TRUE IS FALSE

* Fix lint

* Add test for is false
2022-05-02 14:02:28 -04:00
Maciej Obuchowski
525ba527bb
snowflake: add qualify expression (#465)
Signed-off-by: Maciej Obuchowski <obuchowski.maciej@gmail.com>
2022-04-29 14:11:11 -04:00
Andrew Lamb
edad20cbb8
Add negative tests for POSITION (#469) 2022-04-25 07:21:06 -04:00
yuval-illumex
8f4f01e517
Add Support in the "Position" Function (#463)
* Add support in the position function

* Add Test

* Add lint fixes

* Remove if

* Change from to in

* Remove special method for position

* Fix lint

* PR Review
2022-04-25 06:32:16 -04:00
Andrew Lamb
d2487445b7
Add negative test for IN parsing (#468) 2022-04-24 06:48:31 -04:00
George Andronchik
0924870d11
Support global,local, on commit for create temporary table (#456)
* feat: add global,local / on commit for create temp tables

* chore: minor refactor

* chore: clippy fix
2022-04-22 07:58:39 -04:00
yuval-illumex
278345d21a
Add support of NVARCHAR data type (#462)
* Add support of nvarchar data type

* Change the format type with capitals

Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>

* Add Test

Co-authored-by: Andrew Lamb <andrew@nerdnetworks.org>
2022-04-20 17:25:50 -04:00
Poonai
d035784bdf
Add support for postgres json operators ->, ->>, #>, and #>> (#458)
* add support for postgres json selection

Signed-off-by: password <rbalajis25@gmail.com>

* fix clippy

Signed-off-by: password <rbalajis25@gmail.com>

* add support for postgres `#>` and `#>>` json operator

* fix clippy

Signed-off-by: poonai <rbalajis25@gmail.com>

* resolve comments

Signed-off-by: password <rbalajis25@gmail.com>
2022-04-19 15:46:56 -04:00
slhmy
8f207db059
Support 'SET ROLE' statement (#455) 2022-04-13 14:45:53 -04:00
Andrew Lamb
7480e89f7b (cargo-release) version 0.16.0 2022-04-03 07:05:16 -04:00
Andrew Lamb
f125a287b5
Update changelog for 0.16.0 (#452) 2022-04-03 07:04:07 -04:00
Runji Wang
bfd416d978
Add support for more postgres COPY options (#446)
* implement parsing COPY statement

* support COPY option syntax before PostgreSQL version 9.0

Signed-off-by: Runji Wang <wangrunji0408@163.com>

* update COPY tests

Signed-off-by: Runji Wang <wangrunji0408@163.com>

* improve docs for COPY

Signed-off-by: Runji Wang <wangrunji0408@163.com>

* test and fix AS in COPY

Signed-off-by: Runji Wang <wangrunji0408@163.com>

* recover original test cases

* fix cargo clippy
2022-04-03 06:37:12 -04:00
slhmy
fd8f2df10d
Support Update Set From statement (#450) 2022-04-02 06:34:59 -04:00
Matthew Turner
803fd6c970
Add CREATE DATABASE test and parsing (#451)
* Add test

* Fix CreateDatabse parsing

* Linting

* Cleanup for code style
2022-04-01 13:32:38 -04:00
Maciej Obuchowski
d38c30e9ff
add SELECT INTO statement variation (#447)
Signed-off-by: Maciej Obuchowski <obuchowski.maciej@gmail.com>
2022-03-30 16:01:55 -04:00
Matthew Turner
b68e9a3801
Add support for COPY TO (#441)
* Start adding COPY TO

* Fix statement and add tests

* Merge copy statements

* Remove extra line

* Clippy

* Cleanup
2022-03-22 18:21:44 -04:00
Poonai
12a3e97ef3
add support for SAVEPOINT statement (#438) 2022-03-13 03:29:26 -04:00
Simon Liu
497a3b0e1b
Fixed the bug that the access parsing is wrong when multiple query conditions contain arrays or map. (#433) 2022-03-12 14:29:37 -05:00
Maciej Obuchowski
6b55e51101
add support for MERGE statement (#430)
* add support for MERGE statement

Signed-off-by: Maciej Obuchowski <obuchowski.maciej@gmail.com>

* fix lint errors

Signed-off-by: Maciej Obuchowski <obuchowski.maciej@gmail.com>
2022-03-12 14:28:57 -05:00
Yang Jiang
c688bbb4de
extract operator: add support for week keywords (#436) 2022-03-12 14:17:56 -05:00
Andrew Lamb
481551c075 (cargo-release) version 0.15.0 2022-03-08 13:41:26 -05:00
Andrew Lamb
ad1979146d
Update changelog for 0.15.0 (#431)
* Update changelog for 0.15.0

* Add late breaking additions
2022-03-08 13:34:34 -05:00