hive-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Nanda Vijaydev <nanda.vijay...@gmail.com>
Subject Re: Need help with simple subquery
Date Tue, 29 May 2012 18:25:50 GMT
Use a join as given below, I have used the table name temp.

select a.Category, a.count, b.tot_count, (100*a.count)/tot_count as
percent_count
from   ( select Category, count(*) as count from temp group by Category ) a
    join (select count(*) as tot_count from temp) b
     on (true)

Hope this helps
Nanda Vijaydev

On Mon, May 28, 2012 at 3:28 PM, Igor Tatarinov <igor@decide.com> wrote:

> Try replacing the comma with JOIN
>
> igor
> decide.com
>
> On Mon, May 28, 2012 at 6:48 AM, shan s <mysub987@gmail.com> wrote:
>
>> I need help with a simple subquery. Given below data, I need counts and
>> percentage counts per category. (Re-phrasing my earlier question )
>> With the code below I get an error: *FAILED: Parse Error:* line 6:50 *mismatched
>> input ','* *expecting EOF near 'a'*
>>
>> Looking at the documentation the syntax it is not clear to me.. In the
>> form clause, can I have multiple selects and just alias them and use them
>> in the top query?
>> If so, what am I missing in the below code...
>>
>> select a.category, a.count, b.totalCount
>> from
>> (select category, count(*) as count from gt group by category) a,
>> (select count(*) as totalCount from gt) b ;
>>
>> Many Thanks,
>> Prashant.
>>
>> Id Category         Count Output   Percentage Output
>> 1    A                    A      4             A     40 (4/10)*100
>> 2    A                    B      3             B     30
>> 3    B                    C      3             C     30
>> 4    A
>> 5    C
>> 6    C
>> 7    B
>> 8    B
>> 9    A
>> 10  C
>>
>
>

Mime
View raw message