[ 
https://issues.apache.org/jira/browse/HIVE-686?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexander Pivovarov updated HIVE-686:
-------------------------------------
    Attachment: HIVE-686.1.patch

patch #1
- derive substring_index from GenericUDF
- add Junit and qtest tests

> add UDF substring_index
> -----------------------
>
>                 Key: HIVE-686
>                 URL: https://issues.apache.org/jira/browse/HIVE-686
>             Project: Hive
>          Issue Type: New Feature
>          Components: UDF
>            Reporter: Namit Jain
>            Assignee: Alexander Pivovarov
>         Attachments: HIVE-686.1.patch, HIVE-686.patch, HIVE-686.patch
>
>
> SUBSTRING_INDEX(str,delim,count)
> Returns the substring from string str before count occurrences of the 
> delimiter delim. If count is positive, everything to the left of the final 
> delimiter (counting from the left) is returned. If count is negative, 
> everything to the right of the final delimiter (counting from the right) is 
> returned. SUBSTRING_INDEX() performs a case-sensitive match when searching 
> for delim.
> Examples:
> {code}
> SELECT SUBSTRING_INDEX('www.mysql.com', '.', 3);
> --www.mysql.com
> SELECT SUBSTRING_INDEX('www.mysql.com', '.', 2);
> --www.mysql
> SELECT SUBSTRING_INDEX('www.mysql.com', '.', 1);
> --www
> SELECT SUBSTRING_INDEX('www.mysql.com', '.', 0);
> --''
> SELECT SUBSTRING_INDEX('www.mysql.com', '.', -1);
> --com
> SELECT SUBSTRING_INDEX('www.mysql.com', '.', -2);
> --mysql.com
> SELECT SUBSTRING_INDEX('www.mysql.com', '.', -3);
> --www.mysql.com
> {code}
> {code}
> --#delim does not exist in str
> SELECT SUBSTRING_INDEX('www.mysql.com', 'Q', 1);
> --www.mysql.com
> --#delim is 2 chars
> SELECT SUBSTRING_INDEX('www||mysql||com', '||', 2);
> --www||mysql
> --#delim is empty string
> SELECT SUBSTRING_INDEX('www.mysql.com', '', 2);
> --''
> --#str is empty string
> SELECT SUBSTRING_INDEX('', '.', 2);
> --''
> {code}
> {code}
> --#null params
> SELECT SUBSTRING_INDEX(null, '.', 1);
> --null
> SELECT SUBSTRING_INDEX('www.mysql.com', null, 1);
> --null
> SELECT SUBSTRING_INDEX('www.mysql.com', '.', null);
> --null
> {code}



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

Reply via email to