需求:自定义一个myUpper函数实现系统函数upper的效果
select upper(‘abc’);
ABC
java代码如下:
public class UpperString {
public static String ypg_upper(String str) {
return str.toUpperCase();
}
}
自定义函数示例:
#移除jar包
gs_om -t javaUDF -m rmjar -d pinko.jar
#添加jar包
gs_om -t javaUDF -m addjar -s pinko.jar
--创建自定义函数,并指定全类名
drop FUNCTION ypg_upperstring;
CREATE FUNCTION ypg_upperstring(VARCHAR)
RETURNS VARCHAR
AS 'day05_jar.UpperString.ypg_upper'
LANGUAGE JAVA;
#使用自定义函数
select ypg_upperstring('hello');
ypg_upperstring
-----------------
HELLO
(1 row)