[ 
https://issues.apache.org/jira/browse/HIVE-512?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12732911#action_12732911
 ] 

Min Zhou commented on HIVE-512:
-------------------------------

Here is the definition of elt:  Return string at index number. 
It's essentially a string function
select elt(1, 2, 3) will return a varbinary in mysql, rather than a int. I 
still insist returning string is better. 

Even if do it as you said,  what  type of results will  return when doing 
queries like below?

select(1, '2', 3)
select(2, '2', 3)
select(1, true, 3)
select(2, 2.0, cast(3 as double))



> [GenericUDF] new string function ELT(N,str1,str2,str3,...) 
> -----------------------------------------------------------
>
>                 Key: HIVE-512
>                 URL: https://issues.apache.org/jira/browse/HIVE-512
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Query Processor
>    Affects Versions: 0.4.0
>            Reporter: Min Zhou
>            Assignee: Min Zhou
>             Fix For: 0.4.0
>
>         Attachments: HIVE-512.2.patch, HIVE-512.patch
>
>
> ELT(N,str1,str2,str3,...)
> Returns str1 if N = 1, str2 if N = 2, and so on. Returns NULL if N is less 
> than 1 or greater than the number of arguments. ELT() is the complement of 
> FIELD().
> {noformat}
> mysql> SELECT ELT(1, 'ej', 'Heja', 'hej', 'foo');
>         -> 'ej'
> mysql> SELECT ELT(4, 'ej', 'Heja', 'hej', 'foo');
>         -> 'foo'
> {noformat}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to