Support optional AS keyword in CTE definitions for Databricks#2286
Merged
yoavcloud merged 2 commits intoapache:mainfrom Apr 9, 2026
Merged
Support optional AS keyword in CTE definitions for Databricks#2286yoavcloud merged 2 commits intoapache:mainfrom
yoavcloud merged 2 commits intoapache:mainfrom
Conversation
90111a4 to
2051de9
Compare
Contributor
Author
|
@iffyio Hi! Could you take a look at these Databricks dialect PRs when you have a chance?
Thanks! |
yoavcloud
reviewed
Apr 9, 2026
| } | ||
|
|
||
| /// Parse a CTE (`alias [( col1, col2, ... )] AS (subquery)`) | ||
| /// Parse a CTE (`alias [( col1, col2, ... )] [AS] (subquery)`) |
Contributor
There was a problem hiding this comment.
If there's a way to remove some duplications in this function, it would be great. It's not critical, though IMO.
Contributor
Author
There was a problem hiding this comment.
thanks for the review! I merged the AS and column-defs paths, is it better?
yoavcloud
approved these changes
Apr 9, 2026
Contributor
|
@funcpp, please address the conflicts and see if my comment makes sense. Otherwise, looks good. |
Databricks allows omitting the AS keyword in CTE definitions: `WITH cte (SELECT ...) SELECT * FROM cte` Add `supports_cte_without_as()` dialect method and enable it for Databricks and Generic dialects.
82c2b4f to
a37c193
Compare
yoavcloud
approved these changes
Apr 9, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Dialect::supports_cte_without_as()to support dialects where theASkeyword is optional in CTE definitionsmaybe_parseto disambiguatename (query)fromname (columns), following the same pattern asINsubquery/list disambiguationDatabricks allows omitting the
ASkeyword:Test plan
cargo fmt,cargo clippy, full test suite pass