Skip to content

[SIG-11508]: pivot and unpivot #2

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 10, 2021

Conversation

markwongsk
Copy link

No description provided.

@markwongsk markwongsk changed the base branch from main to don/hacking May 8, 2021 00:02
-- Technically, unpivot has some stricter
   expr requirements (eg instead of expr for ident in col_list
   it should be <column> for ident in col_list). I haven't been
   able to navigate to find this stricter definition yet, but
   maybe we want this fix ASAP.
@markwongsk markwongsk force-pushed the mark/SIG-11508-pivot-and-unpivot-2 branch from 238653e to 18c3c05 Compare May 8, 2021 00:04
@markwongsk markwongsk requested a review from donhcd May 8, 2021 00:05
@markwongsk
Copy link
Author

result.txt

@markwongsk
Copy link
Author

I also tested without the alias to confirm things still work.

Copy link

@donhcd donhcd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks!

@markwongsk markwongsk merged commit e6c54a2 into don/hacking May 10, 2021
@markwongsk markwongsk deleted the mark/SIG-11508-pivot-and-unpivot-2 branch May 10, 2021 14:13
donhcd added a commit that referenced this pull request Jan 13, 2023
* cargo fmt

* add json index for snowflake, bq

* add flatten

* add snowflake dateparts

* useful parsing errors

* parse decimals without 0 prefix

* snowflake: within group

* snowflake: json bracket syntax

* snowflake: join where

* snowflake: ilike

* snowflake: handle like ... escape ...

* snowflake: try_cast

* snowflake: qualify

* snowflake: handle pivot

* snowflake: allow idents to start with $

* snowflake: fix parsing for position

* snowflake: minus set operator

* snowflake json: cleanup/fix bracket and dot notation

* snowflake: number

* snowflake: string literal parse esc quotes

* snowflake: nested exprs can be lists

* join constraints are not required

* smarter number literal parsing with state machine for scientific notation

* snowflake: date/time field variants

* rs/pg: AT TIME ZONE

* rs: ignore/respect nulls

* tokenizer: treat zwsp as whitespace

* pg/rs: SIMILAR TO

* rs: allow brackets around idents

* rs: allow str literal date/time parts

* rs: more IS [NOT] *

* pg: add json ops

* add BigQueryDialect

* bq: backtick quoted idents

* bq: be resilient to trailing commas

* bq: be much more flexible with parsing function args

* bq: handle idents using backticks

* bq: handle interval parsing

* bq: parse regex literals (consider merging with snowflake str parsing)

* bq: add in more date/time parts

* bq: allow aliases with backtick quoting

* bq: parse wildcard modifiers except/replace

* bq: named window specs

* bq: IN <expr>

* snowflake: remove special position handling? maybe should remove more

* bq: double quoted string

* bq: typeless structs

* bq: add secret datetime fields

* fixup bq args bs

* snowflake: ignore/respect nulls for window funcs

* Added Unpivot. Fixed some Pivot (#2)

-- Technically, unpivot has some stricter
   expr requirements (eg instead of expr for ident in col_list
   it should be <column> for ident in col_list). I haven't been
   able to navigate to find this stricter definition yet, but
   maybe we want this fix ASAP.

* [SIG-13647] allow idents for limits and offsets (#3)

* Fix compilation issues (#5)

* Use enum to prevent &'static str lifetime issues

-- Could also use `serde(bound(deserialize = "'de: 'static"))`
-- But I think that will need to be applied on all structs
-- that depend on Expr... which I assume will be ubiquitous

* Make WindowSpec serializable

* Fix more static str stuff

* Fixed tests

* Fixed all compilation errors

* Run clippy --fix

* Fixd lint errors

* Fix more lint errors

* Fix remaining lint issues

* Fix tests pass (#7)

* Fixed trivial tests failures

* Fixed more tests

* Ignored backcompat breaks... for now

* More simple tests fixes

* Fixed tests... but not sure whether this is right

* Clippy

* cargo fmt

* Fixed regression #1

* Fixed second regression

* Ignore snowflake numeric failing test

* Added tests for sigma-related parser changes (#8)

* Added regression tests

* Added test for sigma-related parser changes

* Amended comments

* Removed extraneous println

* Fixed build errors part 1

* Manual cargo fmt because it's hanging on my machine

* When you fail at %s

Co-authored-by: Mark Wong Siang Kai <markwongsk@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants