[jira] [Created] (FLINK-15553) Create table ddl support comment after computed column

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Created] (FLINK-15553) Create table ddl support comment after computed column

Shang Yuanchun (Jira)
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)