[
https://issues.apache.org/jira/browse/CALCITE-3261?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16910134#comment-16910134
]
Danny Chan commented on CALCITE-3261:
-------------------------------------
Thanks [~johnzh], the column name is "EXPR$1" because this is a default name
pattern for atom expressions of Calcite internal, i agree that "min(e.empid)"
is a better name.
For most of the cases, a default name like "EXPR$1" is enough because in a
plan, this name would reference a real expression, but for console output, a
direct expression digest seems more readable.
The way i can think of to fix this issue is use a Shuttle to modify the plan
with the alias you want, but be caution that you should quotes the alias
because it may have invalid identifier characters.
> Incorrect output field names from jdbc
> --------------------------------------
>
> Key: CALCITE-3261
> URL: https://issues.apache.org/jira/browse/CALCITE-3261
> Project: Calcite
> Issue Type: Improvement
> Components: core, jdbc-adapter
> Reporter: Xiaoguang zhang
> Priority: Major
>
> After implementing the missing `print(ResultSet)` method from the examples in
> Calcite [tutorial|[https://calcite.apache.org/docs/index.html]], I found that
> the output field names are incorrect:
> {code:java}
> [deptno, EXPR$1]
> [1, 1]
> [2, 2]
> {code}
> The field name `EXPR$1` can be improved to be more human readable like MySQL
> client:
> {code:java}
> +--------+--------------+
> | deptno | min(e.empid) |
> +--------+--------------+
> | 1 | 1 |
> | 2 | 2 |
> +--------+--------------+
> {code}
>
> PS: the sql statement generating the above outputs:
> {code:sql}
> select d.deptno, min(e.empid) from hr.emps as e join hr.depts as d on
> e.deptno = d.deptno group by d.deptno having count(*) > 1
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)