2022-03-07 reflect函数

------------------reflect函数---------------------
/*
   reflect函数可以支持在sql中调用java中的静态方法
   数据源:
    1,2
    4,3
    6,4
    7,5
    5,6
 */
create table test_reflect
(
    col1 int,
    col2 int
) row format delimited fields terminated by ',';

load data local inpath '/export/data/test_reflect.txt' into table test_reflect;

select *
from test_reflect;

-- 使用java中的静态函数max,min
select col1, col2, reflect('java.lang.Math', 'max', col1, col2) max
from test_reflect; // Math.max(10, 20)

select col1, col2, reflect('java.lang.Math', 'min', col1, col2) min
from test_reflect; // Math.min(10, 20)

-- 使用java中的静态函数UUID
select reflect('java.util.UUID', 'randomUUID'); // UUID.randomUUID()

select concat(col1, '---', reflect('java.util.UUID', 'randomUUID')) connect
from test_reflect;
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容