[
https://issues.apache.org/jira/browse/IGNITE-29043?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Vladislav Pyatkov updated IGNITE-29043:
---------------------------------------
Description:
Allow omitting RECURSIVE by detecting CTE self-references after parsing and
setting the recursive flag before validation. Respect nested CTE scopes and
identifier casing.
Although omitting RECURSIVE is a non-standard extension, it is already
supported by Microsoft SQL Server, Oracle Database, SQLite, and Snowflake.
SQLite explicitly documents compatibility with SQL Server and Oracle as the
reason for allowing this syntax. Supporting it in Ignite would reduce migration
effort and the need to maintain database-specific SQL variants while retaining
support for the standard WITH RECURSIVE syntax.
was:Allow omitting RECURSIVE by detecting CTE self-references after parsing
and setting the recursive flag before validation. Respect nested CTE scopes and
identifier casing. Although this syntax is not ANSI SQL compliant, it is a
valuable usability improvement that simplifies queries and improves
compatibility with other databases.
> Calcite: Support recursive CTEs without the RECURSIVE keyword
> -------------------------------------------------------------
>
> Key: IGNITE-29043
> URL: https://issues.apache.org/jira/browse/IGNITE-29043
> Project: Ignite
> Issue Type: Improvement
> Reporter: Vladislav Pyatkov
> Assignee: Vladislav Pyatkov
> Priority: Major
> Labels: calcite, ignite-2, sql
> Time Spent: 10m
> Remaining Estimate: 0h
>
> Allow omitting RECURSIVE by detecting CTE self-references after parsing and
> setting the recursive flag before validation. Respect nested CTE scopes and
> identifier casing.
> Although omitting RECURSIVE is a non-standard extension, it is already
> supported by Microsoft SQL Server, Oracle Database, SQLite, and Snowflake.
> SQLite explicitly documents compatibility with SQL Server and Oracle as the
> reason for allowing this syntax. Supporting it in Ignite would reduce
> migration effort and the need to maintain database-specific SQL variants
> while retaining support for the standard WITH RECURSIVE syntax.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)