[
https://issues.apache.org/jira/browse/CALCITE-1257?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15301064#comment-15301064
]
Jesse Yates commented on CALCITE-1257:
--------------------------------------
Feels like a lot of this is covered by the "EXTENDS" syntax, which covers both
the expected field name and expected type. Only case that sits outside this
seems to be {{SELECT *}}. What are you thinking for how this would look
otherwise?
I'd also be interested in some way to late-bind field projection - i.e. user
queries {{col1}}, but under the hood we transform that to {{column1, col1, c1}}
based on how the table is functionally structured.
> Late-binding schema
> -------------------
>
> Key: CALCITE-1257
> URL: https://issues.apache.org/jira/browse/CALCITE-1257
> Project: Calcite
> Issue Type: Bug
> Reporter: Julian Hyde
> Assignee: Julian Hyde
>
> Calcite should support late-binding schema, similar to what Drill does.
> Currently if we query a schema-less database such as MongoDB or Elasticsearch
> the best practice is to create a view that calls {{_MAP['fieldName']}} then
> casts the result to the desired data type. Creating that view is a
> significant effort. Certain tables should be flagged as having "late schema",
> and when validating queries against those tables, users should be able to
> reference any columns they like.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)