Takahiko Saito created HIVE-12435:
-------------------------------------

             Summary: SELECT COUNT(CASE WHEN...) GROUPBY returns wrong results 
in a case of ORC
                 Key: HIVE-12435
                 URL: https://issues.apache.org/jira/browse/HIVE-12435
             Project: Hive
          Issue Type: Bug
          Components: ORC
    Affects Versions: 2.0.0
            Reporter: Takahiko Saito


Run the following query:
{noformat}
create table count_case_groupby (key string, bool boolean) STORED AS orc;
insert into table count_case_groupby values ('key1', true),('key2', 
false),('key3', NULL),('key4', false),('key5',NULL);
{noformat}
The table contains the following:
{noformat}
key1    true
key2    false
key3    NULL
key4    false
key5    NULL
{noformat}
The below query returns:
{noformat}
SELECT key, COUNT(CASE WHEN bool THEN 1 WHEN NOT bool THEN 0 ELSE NULL END) AS 
cnt_bool0_ok FROM count_case_groupby GROUP BY key;
key1    1
key2    1
key3    1
key4    1
key5    1
{noformat}

while it expects the following results:
{noformat}
key1    1
key2    1
key3    0
key4    1
key5    0
{noformat}

The query works with hive ver 1.2. Also it works when a table is not orc format.



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

Reply via email to