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/10/29 18:33:00 UTC
[jira] [Commented] (CALCITE-4363) Need a utility to check if a SQL
operator is standard
[ https://issues.apache.org/jira/browse/CALCITE-4363?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17223122#comment-17223122 ]
Julian Hyde commented on CALCITE-4363:
--------------------------------------
Can you clarify what you mean by 'standard'?
We have the notion of 'function tables' (e.g. a connection might use the built-in functions plus the Oracle functions) and so it would make sense to check whether a function is in the current function table.
Somewhat related: SqlStdOperatorTable contains 'internal functions' (that cannot be represented in SQL, and are therefore never created by the parser). I have been thinking for a while that these should be moved out.
> Need a utility to check if a SQL operator is standard
> -----------------------------------------------------
>
> Key: CALCITE-4363
> URL: https://issues.apache.org/jira/browse/CALCITE-4363
> Project: Calcite
> Issue Type: Wish
> Components: core
> Reporter: Liya Fan
> Assignee: Liya Fan
> Priority: Major
>
> Currently, all standard SQL operators are defined in SqlStdOperatorTable.java as static members, not as enums. This makes it difficult to check if a SQL function is a standard one.
> In many scenarios, we need such a check. For example, some optimizations can be performed, if we know the function is standard (not user-defined), because user-defined functions may have some unknown side-effects.
> To support the check, we only need to maintain a set that contains all standard operators.
> Do you think such a utility should be supported?
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)