Hive的自定義查詢函式

2021-09-11 07:06:02 字數 1295 閱讀 9842

1. hive的自定義函式(udf): user defined function

可以直接應用於select語句,對查詢結構做格式化處理後,再輸出內容。

2. hive自定義函式的實現細節

自定義udf需要繼承org.apache.hadoop.hive.ql.udf。

需要實現evaluate函式,evaluate函式支援過載。

3. hive自定義函式案例

案例一: 拼接兩個字串

package udf;

import org.apache.hadoop.hive.ql.exec.udf;

public class myconcatstring extends udf

}

案例二: 判斷員工表中工資的級別

package udf;

import org.apache.hadoop.hive.ql.exec.udf;

/* * 根據員工薪水判斷員工級別

(*) sal < 1000 ----> grade a

(*) 1000<=sal <3000 ---> grade b

(*) sal >=3000 ---> grade c

*/public class checksalarygrade extends udf else if (sal >= 1000 && sal < 3000) else

}}

4、hive自定義函式的部署

hive> add jar /root/temp/udf.jar;
hive> create temporary function myconcat as 'udf.myconcatstring';

hive> create temporary function checksal as 'udf.checksalarygrade';

5、hive自定義函式的呼叫

hive> select myconcat(ename,job) from emp;

hive> select ename,sal,checksalary(sal) from emp;

hive> drop temporary function checksalary;

hive自定義函式

1.建立類,繼承udf package com.hivedemo.udf import org.apache.hadoop.hive.ql.exec.description import org.apache.hadoop.hive.ql.exec.udf 自定義hive函式 description...

Hive 自定義函式

返回 所有自帶的函式 show functions 返回對該函式的解釋 desc function spilt 返回對該函式的使用例子 desc function extended split1.udf user defined function datediff,date format 等函式 一...

Hive 自定義函式

hive 支援自定義udf,udtf,udaf函式 以自定義udf為例 使用乙個名為evaluate的方法 package com.hive.custom import org.apache.hadoop.hive.ql.exec.udf import org.apache.hadoop.io.in...