hailong wang created FLINK-15553:
------------------------------------
Summary: Create table ddl support comment after computed column
Key: FLINK-15553
URL:
https://issues.apache.org/jira/browse/FLINK-15553 Project: Flink
Issue Type: Improvement
Components: Table SQL / API
Affects Versions: 1.10.0
Reporter: hailong wang
Fix For: 1.11.0
For now, we can define computed column in create table ddl, but we can not add comment after it just like regular table column, So we should support it, it's grammar as follows:
{code:java}
col_name AS expr [COMMENT 'string']
{code}
My idea is, we can introduce class
{code:java}
SqlTableComputedColumn{code}
to wrap name, expression and comment, And just get the element from it will be ok.
As for parserImpls.ftl, it can be like as follows:
{code:java}
identifier = SimpleIdentifier()
<AS>
expr = Expression(ExprContext.ACCEPT_NON_QUERY)
[ <COMMENT> <QUOTED_STRING> {
String p = SqlParserUtil.parseString(token.image);
comment = SqlLiteral.createCharString(p, getPos());
}]
{
SqlTableComputedColumn tableComputedColumn =
new SqlTableComputedColumn(identifier, expr, comment, getPos());
context.columnList.add(tableComputedColumn);
}{code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)