Till Rohrmann created FLINK-4244:
------------------------------------

             Summary: Field names for union operator do not have to be equal
                 Key: FLINK-4244
                 URL: https://issues.apache.org/jira/browse/FLINK-4244
             Project: Flink
          Issue Type: Improvement
          Components: Table API & SQL
    Affects Versions: 1.1.0
            Reporter: Till Rohrmann
            Priority: Trivial


Flink Table API's documentation says that the schemas of unioned tables have to 
be identical (wrt types and names). However, union works also with tables where 
the types are identical but not the names:

{code}
val input1Seq = 0 until 10 map {x => (x, ('a' + x).toChar.toString, x.toDouble)}
    val input2Seq = 0 until 10 map {x => (x, ('a' + x).toChar.toString, 
x.toDouble)}

    val inputDS1 = env.fromCollection(input1Seq)
    val inputDS2 = env.fromCollection(input2Seq)

    val input1 = tblEnv.fromDataSet(inputDS1, 'a, 'b, 'c)
    tblEnv.registerTable("foobar", input1)
    val input2 = tblEnv.fromDataSet(inputDS2, 'd, 'e, 'f)
    tblEnv.registerTable("foobar2", input2)

    val result = tblEnv.sql("SELECT * FROM foobar UNION ALL SELECT * FROM 
foobar2")

    tblEnv.toDataSet[Row](result).print()
{code}

We should update the documentation accordingly.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to