Spark 通用函数详解
本节主要介绍 Spark SQL 中常用的数据转换函数和空值处理函数。
4.4 数据转换函数
- To_char 函数: 用于将日期或数字类型转换为字符串类型。
sql
select to_char(current_date,'yyyy') from table_name;
select to_char(current_date,'yyyy-MM-dd') from table_name;
select to_char(salary,'L999,999') from employee;
select to_char(current_date,’D’) from table_name; // 返回星期
- To_number 函数: 用于将字符串类型转换为数字类型。
sql
select to_number('13')+to_number('14') from table_name;
- To_date 函数: 用于将字符串类型转换为日期类型。
sql
select to_date('20090210','yyyyMMdd') from table_name;
4.5 空值处理函数
- NVL() 函数: 用于将 NULL 值替换为指定值。
sql
select nvl(commission,0) from employee;
- NULLIF() 函数: 如果两个表达式相等,则返回 NULL,否则返回第一个表达式的值。
sql
-- 假设需要判断 salary 是否等于 bonus,相等则返回 NULL
select nullif(salary, bonus) from employee;
- NVL2() 函数: 如果第一个表达式不为 NULL,则返回第二个表达式的值,否则返回第三个表达式的值。
sql
select empno, ename, sal, comm, nvl2(comm, sal+comm, sal) total from emp;
暂无评论