[
https://issues.apache.org/jira/browse/CALCITE-1856?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Julian Hyde resolved CALCITE-1856.
----------------------------------
Resolution: Fixed
Fixed in http://git-wip-us.apache.org/repos/asf/calcite/commit/c0307571. Thanks
for the PR, [~suez1224]! (It won't make it into 1.13; 1.13 was released on
Monday.)
> Add option StructKind.PEEK_FIELDS_NO_EXPAND, similar to PEEK_FIELDS but is
> not expanded in "SELECT *"
> -----------------------------------------------------------------------------------------------------
>
> Key: CALCITE-1856
> URL: https://issues.apache.org/jira/browse/CALCITE-1856
> Project: Calcite
> Issue Type: Bug
> Components: core
> Reporter: Shuyi Chen
> Assignee: Julian Hyde
> Fix For: 1.14.0
>
>
> In Calcite, StructKind.PEEK_FIELDS allow see its fields without qualifying
> them with the name of this field. For example, if address is labeled
> PEEK_FIELDS, one could write zipcode as shorthand for address.zipcode, i.e.,
> the following SQL is allowed:
> {code:java}
> Select zipcode from T
> {code}
> StructKind.FULLY_QUALIFIED is the normal SQL behavior, where each field must
> be referenced explicitly, i.e. the above SQL will fail.
> But currently in calcite, a side effect of using PEEK_FIELDS is that "select
> *" will recursively flatten the PEEK_FIELDS RecordType. We want to add an
> option call PEEK_FIELDS_NO_FLATTENING to disable the behavior.
> With the new option, if the table structure *T* is as follows:
> {code:java}
> VARCHAR K0,
> VARCHAR C1,
> RecordType:peek_no_flattening(INTEGER C0, INTEGER C1) F0,
> RecordType:peek_no_flattening(INTEGER C0, INTEGER C2) F1
> {code}
> The following query
> {code:java}
> Select * from T
> {code} will return (K0, C1, F0, F1) instead of (K0, C1, F0.C0, F0.C1, F1.C0,
> F1.C1)
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)