You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flink.apache.org by "Mohsen Rezaei (Jira)" <ji...@apache.org> on 2023/03/29 18:41:00 UTC
[jira] [Created] (FLINK-31661) Add parity between `ROW` value function and it's type declaration
Mohsen Rezaei created FLINK-31661:
-------------------------------------
Summary: Add parity between `ROW` value function and it's type declaration
Key: FLINK-31661
URL: https://issues.apache.org/jira/browse/FLINK-31661
Project: Flink
Issue Type: Improvement
Components: API / DataSet
Affects Versions: 1.16.1, 1.17.0, 1.18.0
Reporter: Mohsen Rezaei
Fix For: 1.18.0, 1.17.1
Currently the [`ROW` table type|https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/dev/table/types/#row] allows for a name and type, and optionally a description, but [its value constructing function|https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/dev/table/types/#row] only supports an arbitrary list of expressions.
This prevents users from providing human-readable names for the fields provded to a `ROW()` or `()` value function call, resulting in system-defined `EXPR$n` names that lose their meaning as they are mixed in with other queries.
For example, the following SQL query:
```
SELECT (id, name) as struct FROM t1;
```
results in the following consumable data type for the `ROW` column:
```
ROW<`EXPR$0` DECIMAL(10, 2), `EXPR$1` STRING> NOT NULL
```
I'd be happy to contribute to this change, but I need some guidance and pointers on where to start making changes for this.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)