hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pengcheng Xiong (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (HIVE-9002) union all does not generate correct result for order by and limit
Date Tue, 02 Dec 2014 00:03:13 GMT

     [ https://issues.apache.org/jira/browse/HIVE-9002?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Pengcheng Xiong updated HIVE-9002:
----------------------------------
    Description: 
Right now if we have
select col from A
union all
select col from B [Operator]

it is treated as

(select col from A)
union all
(select col from B [Operator])

Although it is correct for where, group by (having) join operators, it is not correct for
order by and limit operators. They should be

(select col from A
union all
select col from B) [order by, limit]

For order by, we can refer to MySQL, Oracle, DB2

mysql

http://dev.mysql.com/doc/refman/5.1/en/union.html

oracle

https://docs.oracle.com/cd/E17952_01/refman-5.0-en/union.html

ibm

http://www-01.ibm.com/support/knowledgecenter/ssw_i5_54/sqlp/rbafykeyu.htm


  was:
Right now if we have
select col from A
union all
select col from B [Operator]

it is treated as

(select col from A)
union all
(select col from B [Operator])

Although it is correct for where, group by (having) join operators, it is not correct for
order by and limit operators. They should be

(select col from A
union all
select col from B) [order by, limit]



> union all does not generate correct result for order by and limit
> -----------------------------------------------------------------
>
>                 Key: HIVE-9002
>                 URL: https://issues.apache.org/jira/browse/HIVE-9002
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Pengcheng Xiong
>            Assignee: Pengcheng Xiong
>
> Right now if we have
> select col from A
> union all
> select col from B [Operator]
> it is treated as
> (select col from A)
> union all
> (select col from B [Operator])
> Although it is correct for where, group by (having) join operators, it is not correct
for order by and limit operators. They should be
> (select col from A
> union all
> select col from B) [order by, limit]
> For order by, we can refer to MySQL, Oracle, DB2
> mysql
> http://dev.mysql.com/doc/refman/5.1/en/union.html
> oracle
> https://docs.oracle.com/cd/E17952_01/refman-5.0-en/union.html
> ibm
> http://www-01.ibm.com/support/knowledgecenter/ssw_i5_54/sqlp/rbafykeyu.htm



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

Mime
View raw message