代码中分别用面向对象和面向函数两种写法自定义了两个函数:
low2Up: 小写转大写
up2Low: 大写转小写

import org.apache.spark.sql.types.StringType
import org.apache.spark.sql.{DataFrame, SparkSession}object SparkSQLFunction {def main(args: Array[String]): Unit = {//1. 构建SparkSession对象val sparkSession: SparkSession = SparkSession.builder().appName("SparkSQLFunction").master("local[2]").getOrCreate()//2. 测试数据加载为DataFrameval dataFrame: DataFrame = sparkSession.read.text("E:\\BigData\\kkb\\课件资料\\spark_day05\\案例数据\\test_udf_data.txt")//3. 创建临时表dataFrame.createTempView("t_udf")//4. 调用udf的register方法,这一步是构建udf的关键; register接受三个值: 注册udf名称,函数体,返回值类型 (面向对象写法)sparkSession.udf.register("low2Up",new UDF1[String, String] {override def call(t1: String): String = {t1.toUpperCase}},StringType)//5. 另外一种更加方便的构建udf方式 (面向函数写法)sparkSession.udf.register("up2Low",(x:String)=>x.toLowerCase)//6. 调用sparksql测试udf函数sparkSession.sql("select value from t_udf").show()sparkSession.sql("select low2Up(value) from t_udf").show()sparkSession.sql("select up2Low(value) from t_udf").show()//7. 关闭连接sparkSession.stop()}
}

【Spark】sparksql中使用自定义函数相关推荐

  1. Entity Framework 6 Recipes 2nd Edition(10-5)译 - 在存储模型中使用自定义函数

    10-5. 在存储模型中使用自定义函数 问题 想在模型中使用自定义函数,而不是存储过程. 解决方案 假设我们数据库里有成员(members)和他们已经发送的信息(messages) 关系数据表,如Fi ...

  2. php 模板 自定义函数调用,thinkphp模板中使用自定义函数

    注意:自定义函数要放在项目应用目录/common/common.php中. 这里是关键. 模板变量的函数调用格式:{$varname|function1|function2=arg1,arg2,### ...

  3. hive 元数据 自定义_如何在Hive中创建自定义函数UDF及如何直接通过Impala的同步元数据重用UDF的jar文件-阿里云开发者社区...

    如何在Hive中创建自定义函数UDF及使用 如何在Impala中使用Hive的自定义函数 UDF函数开发 使用Intellij工具开发Hive的UDF函数,进行编译: 1.使用Intellij工具通过 ...

  4. C语言:自定义函数中调用自定义函数的方法

    自定义函数中调用自定义函数 在我们编写C语言程序时,可以将要经常用到的或者有自己单独作用的那一部分代码独立成一个函数,不仅可以简化我们的程序,还可以使我们的程序更加可见话. 正文阿巴阿巴 方法一:直接 ...

  5. 同花顺中如何自定义函数

    同花顺中如何自定义函数 答:自定义公式就是函数,也可以用技术指标也行.

  6. oracle迁移mysql视图中函数问题,mysql中to_char自定义函数。

    迁移到mysql中会遇到函数迁移问题,我们可以自定义函数 DELIMITER $$ CREATE FUNCTION new_data_report.to_char(Intnumber int) RET ...

  7. Spark Streaming中的操作函数分析

    参考文章:http://blog.csdn.net/dabokele/article/details/52602412 根据Spark官方文档中的描述,在Spark Streaming应用中,一个DS ...

  8. 自定义_Excel中的自定义函数(自定义函数的基础内容)

    各位朋友,你们好. 最近和网友沟通交流Excel问题,好些问题都没法直接实现,因此用了很多自定义函数,也给头条里的朋友写过几个自定义函数(比如颜色计算的函数.提取不重复内容的函数.汉字转拼音的函数-- ...

  9. pytorch 中 利用自定义函数 get_mask_from_lengths(lengths, max_len)获取每个batch的mask

    在pytorch中,经常会需要通过batch进行批量处理数据,由于每个batch中各个样本之间存在差异,经常会需要进行先padding后mask的操作. 尤其是在自然语言处理任务中,每个batch中的 ...

最新文章

  1. 网易云音乐的消息队列改造之路
  2. 华人Hbuy隐私政策
  3. Uva592 Island of Logic
  4. 分布式实时计算—Storm—基础介绍
  5. 遇见好链接(我还并没有看)
  6. 分布式事务中常见的三种解决方案
  7. ASP.NET MVC 1.0 学习笔记(随时更新)
  8. 我的电脑上的软件推荐
  9. C++ cin, cin.get, cin.getline. (iostream, std)
  10. Safari浏览器Session问题
  11. 模式窗口(Window.ShowModalDialogs)中提交不弹出新窗口
  12. matlab中的矩阵元素错位,matlab – 如何将矩阵中较弱元素附近的弱元素归零?
  13. 学生管理系统(Java实现)
  14. Flash:一个TLF图文并貌的高级应用类
  15. Unity插件——文字转朗读语音RtVioce插件功能/用法/下载
  16. userenv和sys_context函数
  17. YepEda Allegro Skill学习版
  18. JAVA——JSch
  19. 22考研:学长学姐考研期间最后悔的事!引以为戒
  20. innodb buffer pool管理--数据页的访问

热门文章

  1. 怎样把照片中的头像扶正_一个男人的微信头像,往往暴露了“人品”,你是哪一种?...
  2. 用popen函数操作其它程序的输入和输出
  3. 某大型银行深化系统技术方案之十三:服务层之服务接口模式
  4. SQL SERVER自带调试工具SQL Server Profiler简单用法
  5. HttpURLConnection请求数据流的写入(write)和读取(read)
  6. 服务器控件下拉框显示隐藏,演练:在 GridView Web 服务器控件中编辑时显示下拉列表...
  7. php 星号邮箱,PHP以星号隐藏用户名手机号码和邮箱实例
  8. Image合并添加文字内容
  9. 勒索病毒引出重大话题:公有云比私有云更安全?
  10. 模板与泛型编程(二)