Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Plain View
Hive, mail # user - Invalid Function rank in HiveQL


+
Raihan Jamal 2012-07-10, 05:40
+
Vijay 2012-07-10, 05:51
+
Raihan Jamal 2012-07-10, 06:42
+
Nitin Pawar 2012-07-10, 06:52
+
Raihan Jamal 2012-07-10, 07:00
Copy link to this message
-
Re: Invalid Function rank in HiveQL
Nitin Pawar 2012-07-10, 07:04
change this " SELECT buyer_id, item_id, created_time" to " SELECT buyer_id,
item_id, created_time, rk"
On Tue, Jul 10, 2012 at 12:30 PM, Raihan Jamal <[EMAIL PROTECTED]>wrote:

> I was not able to understand, This is my below qiuery that I am using
> currently-
>
> SELECT buyer_id, item_id, created_time
> FROM (
>     SELECT buyer_id, item_id, rank(buyer_id) as rank, created_time
>     FROM testingtable1
>     DISTRIBUTE BY buyer_id, item_id
>     SORT BY buyer_id, item_id, created_time desc
> ) a
> WHERE rank < 10
> ORDER BY buyer_id, created_time, rank;
>
>
> What changes I need to make?
>
>
>
>
> *Raihan Jamal*
>
>
>
> On Mon, Jul 9, 2012 at 11:52 PM, Nitin Pawar <[EMAIL PROTECTED]>wrote:
>
>> try rk in upper select statement as well
>>
>>
>> On Tue, Jul 10, 2012 at 12:12 PM, Raihan Jamal <[EMAIL PROTECTED]>wrote:
>>
>>> Thanks for commenting out. Yes I figured that out, its a UDF. So now I
>>> have created a new UDF Rank and added to classpath also. But when I am
>>> again running the below query-
>>>
>>> SELECT buyer_id, item_id, created_time
>>> FROM (
>>>     SELECT buyer_id, item_id, Rank(buyer_id) as rk, created_time
>>>     FROM testingtable1
>>>     DISTRIBUTE BY buyer_id, item_id
>>>     SORT BY buyer_id, item_id, created_time desc
>>> ) a
>>> WHERE rk < 10
>>> ORDER BY buyer_id, rk;
>>>
>>> I am getting this below error-
>>>
>>> *FAILED: Error in semantic analysis: line 9:19 Invalid Table Alias or
>>> Column Reference rk*
>>>
>>>
>>> Why is it so? Any suggestions?
>>>
>>>
>>> *Raihan Jamal*
>>>
>>>
>>>
>>> On Mon, Jul 9, 2012 at 10:51 PM, Vijay <[EMAIL PROTECTED]> wrote:
>>>
>>>> hive has no built-in rank function. you'd need to use a user-defined
>>>> function (UDF) to simulate it. there are a few custom implementations
>>>> on the net that you can leverage.
>>>>
>>>> On Mon, Jul 9, 2012 at 10:40 PM, Raihan Jamal <[EMAIL PROTECTED]>
>>>> wrote:
>>>> > What's wrong with the below query.
>>>> >
>>>> >
>>>> > SELECT buyer_id, item_id, created_time
>>>> > FROM (
>>>> >     SELECT buyer_id, item_id, rank(buyer_id) as rank, created_time
>>>> >     FROM testingtable1
>>>> >     DISTRIBUTE BY buyer_id, item_id
>>>> >     SORT BY buyer_id, item_id, created_time desc
>>>> > ) a
>>>> > WHERE rank < 10
>>>> > ORDER BY buyer_id, rank
>>>> >
>>>> >
>>>> > I am always getting as -
>>>> >
>>>> > FAILED: Error in semantic analysis: line 3:30 Invalid Function rank
>>>> >
>>>> >
>>>> > I am using Hive 0.6 I guess.
>>>> >
>>>> >
>>>> >
>>>> > Raihan Jamal
>>>> >
>>>>
>>>
>>>
>>
>>
>> --
>> Nitin Pawar
>>
>>
>
--
Nitin Pawar
+
Jasper Knulst 2012-07-10, 07:16
+
Raihan Jamal 2012-07-10, 19:31
+
Vijay 2012-07-10, 23:01
+
Raihan Jamal 2012-07-10, 23:18
+
Raihan Jamal 2012-07-10, 23:21
+
Vijay 2012-07-10, 23:37
+
Raihan Jamal 2012-07-11, 03:31