[ 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.