[ 
https://issues.apache.org/jira/browse/FLINK-7003?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Shuyi Chen updated FLINK-7003:
------------------------------
    Description: 
Currently, CompositeRelDataType is extended from 
RelRecordType(StructKind.PEEK_FIELDS, ...).  In Calcite, StructKind.PEEK_FIELDS 
would allow us to peek fields for nested types. However, when we use "select * 
from", calcite will flatten all nested fields that is marked as 
StructKind.PEEK_FIELDS in the table. 

For example, 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} should return (K0, C1, F0, F1) instead of (K0, C1, F0.C0, F0.C1, F1.C0, 
F1.C1), which is the current behavior.


  was:Currently, CompositeRelDataType is extended from 
RelRecordType(StructKind.PEEK_FIELDS, ...).  In Calcite, StructKind.PEEK_FIELDS 
would allow us to peek fields for nested types. However, when we use "select * 
from", calcite will flatten all nested fields that is marked as 
StructKind.PEEK_FIELDS in the table. 


> "select * from" in Flink SQL should not flatten all fields in the table by 
> default
> ----------------------------------------------------------------------------------
>
>                 Key: FLINK-7003
>                 URL: https://issues.apache.org/jira/browse/FLINK-7003
>             Project: Flink
>          Issue Type: Bug
>          Components: Table API & SQL
>            Reporter: Shuyi Chen
>
> Currently, CompositeRelDataType is extended from 
> RelRecordType(StructKind.PEEK_FIELDS, ...).  In Calcite, 
> StructKind.PEEK_FIELDS would allow us to peek fields for nested types. 
> However, when we use "select * from", calcite will flatten all nested fields 
> that is marked as StructKind.PEEK_FIELDS in the table. 
> For example, 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} should return (K0, C1, F0, F1) instead of (K0, C1, F0.C0, F0.C1, 
> F1.C0, F1.C1), which is the current behavior.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to