[ 
https://issues.apache.org/jira/browse/CALCITE-3339?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16928276#comment-16928276
 ] 

Kenneth Knowles commented on CALCITE-3339:
------------------------------------------

A `DESCRIPTOR` parameter expression seems only really applicable for opaque 
table functions defined outside SQL. The standard and Oracle lack reasonable 
syntax for using such a value in a SQL query. So a string is not much worse. It 
is less obvious that it is statically type-checkable, but you still can and 
would want to. So you might as well parse the keyword DESCRIPTOR and make it 
obvious it is an identifier with a binding site. That binding site is the 
other, mandatory, table parameter to the function. Notably, the keyword is not 
permissible except as an immediate literal parameter.

> DESCRIPTOR as a SQL operator in SqlStdOperatorTable
> ---------------------------------------------------
>
>                 Key: CALCITE-3339
>                 URL: https://issues.apache.org/jira/browse/CALCITE-3339
>             Project: Calcite
>          Issue Type: Sub-task
>            Reporter: Rui Wang
>            Assignee: Rui Wang
>            Priority: Major
>
> For query:
> SELECT * 
> FROM TABLE(TUMBLE_TVF(
>         TABLE ORDERS,
>         DESCRIPTOR(ROWTIME), 
>         INTERVAL '10' MINUTE))
> TABLE ORDERS is converted to SqlPrefixOperator, but DESCRIPTOR(ROWTIME) has 
> no mapping in SqlStdOperatorTable. 
> There are two options:
> 1. There is a SqlColumnListConstructor which serves the same(similar) purpose 
> to specific a list of column. 
> 2. We create a new operator for DESCRIPTOR.
> Reuse existing code is always good so we can start from option one and see if 
> it works.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

Reply via email to