[ 
https://issues.apache.org/jira/browse/FLINK-6975?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16086823#comment-16086823
 ] 

ASF GitHub Bot commented on FLINK-6975:
---------------------------------------

Github user wuchong commented on a diff in the pull request:

    https://github.com/apache/flink/pull/4274#discussion_r127382075
  
    --- Diff: 
flink-libraries/flink-table/src/main/scala/org/apache/flink/table/expressions/stringExpressions.scala
 ---
    @@ -277,3 +278,47 @@ case class Overlay(
           position.toRexNode)
       }
     }
    +
    +/**
    +  * Returns the string that results from concatenating the arguments.
    +  * Returns NULL if any argument is NULL.
    +  */
    +case class Concat(strings: Seq[Expression]) extends Expression with 
InputTypeSpec {
    +
    +  override private[flink] def children: Seq[Expression] = strings
    +
    +  override private[flink] def resultType: TypeInformation[_] = 
BasicTypeInfo.STRING_TYPE_INFO
    +
    +  override private[flink] def expectedTypes: Seq[TypeInformation[_]] =
    +    children.map(_ => STRING_TYPE_INFO)
    +
    +  override def toString: String = s"concat($strings)"
    +
    +  override private[flink] def toRexNode(implicit relBuilder: RelBuilder): 
RexNode = {
    +    relBuilder.call(ScalarSqlFunctions.CONCAT, children.map(_.toRexNode))
    +  }
    +}
    +
    +/**
    +  * Returns the string that results from concatenating the arguments and 
separator.
    +  * Returns NULL If the separator is NULL.
    +  *
    +  * Note: this user-defined function does not skip empty strings. However, 
it does skip any NULL
    +  * values after the separator argument.
    +  **/
    +case class ConcatWs(separator: Expression, strings: Seq[Expression])
    --- End diff --
    
    What about make this signature to `args: Seq[Expression]`,  which combines 
`separator` and `strings` before construct `ConcatWs`. So that we do not need 
to change the FunctionCatalog. I think it's fine, because `ConcatWs` is not 
used by users.


> Add CONCAT/CONCAT_WS supported in TableAPI
> ------------------------------------------
>
>                 Key: FLINK-6975
>                 URL: https://issues.apache.org/jira/browse/FLINK-6975
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Table API & SQL
>    Affects Versions: 1.4.0
>            Reporter: sunjincheng
>            Assignee: sunjincheng
>              Labels: starter
>
> See FLINK-6925 for detail.



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

Reply via email to