You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Julian Hyde (Jira)" <ji...@apache.org> on 2020/06/24 00:06:00 UTC

[jira] [Created] (CALCITE-4087) Hoist, a utility to replace literals in a SQL string with placeholders

Julian Hyde created CALCITE-4087:
------------------------------------

             Summary: Hoist, a utility to replace literals in a SQL string with placeholders
                 Key: CALCITE-4087
                 URL: https://issues.apache.org/jira/browse/CALCITE-4087
             Project: Calcite
          Issue Type: New Feature
          Components: babel
    Affects Versions: 1.23.0
            Reporter: Julian Hyde


Add "Hoist", a utility to replace literals in a SQL string with placeholders.

By default it uses Calcite's parser, but you can configure to use different quoting, casing, and also to use a different parser such as Babel for other dialects of SQL.

It generates a data structure, {{Hoisted}}, that contains a map of where the literals occur within the SQL string. The Hoisted.substitute method generates an alternative SQL string, replacing the literals with a custom string.

It does not call {{SqlNode.unparse}}, and therefore does not lose any of the original formatting.

For more examples, see tests added to {{SqlParserTest}} and {{BabelParserTest}}.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)