关于spark中DatatFrame函数操作中isin方法的使用
需求:
1、需要从一张mysql数据表中获取并筛选数据
2、通过spark将该表读进来,形成一个df:DataFrame,有一个集合
val list = List[String]("小李", "小王", "4", "5", "7")
3、需要从df中进行筛选出来name在list中的值
df.where('name.isin(list)).show()
结果:
然而,isin(),看源码:
里面需要的是一个可边长参数,我们想当然的把它当成了一个集合,此时不能将整个list传进去,但是我又要实现包含查询,但是又不想通过for循环遍历进行union的方式(这种方式是可以实现的,也就是说根据条件匹配list中的第一个值,然后将其定义成var,然后在遍历list中的每一个值作为条件,最后将其union起来,很笨,我一开始就这么干的),此时有一个新的办法,就是讲list改为list:_*
df.where('name.isin(list:_*)).show()
结果:
搞定!!!
记录一下。
关于spark中DatatFrame函数操作中isin方法的使用的更多相关文章
- Spark中Java函数的使用方法笔记
1: map 函数map是对RDD中的每个元素都执行一个指定的函数来产生一个新的RDD. 任何原RDD中的元素在新RDD中都有且只有一个元素与之对应. 2: mapPartitions函数</p ...
- Excel中choose函数的使用方法
你还在为Excel中choose函数的使用方法而苦恼吗,今天小编教你Excel中choose函数的使用方法,让你告别Excel中choose函数的使用方法的烦恼. 经验主要从四方面对Excel函数进行 ...
- Excel中Sumproduct函数的使用方法
1.sumproduct函数的含义 1 1.Sumproduct函数的适用范围,在给定的几组数组中,然后把数组间对应的元素相乘,最后返回乘积之和. 从字面上可以看出,sumproduct有两个英文单词 ...
- Excel中concatenate函数的使用方法
你还在为Excel中concatenate函数的使用方法而苦恼吗,今天小编教你Excel中concatenate函数的使用方法,让你告别Excel中concatenate函数的使用方法的烦恼. 经验主 ...
- Excel中countif函数的使用方法
1.countif函数的含义 在指定区域中按指定条件对单元格进行计数(单条件计数) 建议和countifs函数结合起来学习,可以观看小编的经验Excel中countifs函数的使用方法. END 2. ...
- python3中reduce()函数的使用方法示例
reduce() 函数会对参数序列中元素进行累积,下面这篇文章主要给大家介绍了关于python中reduce()函数的使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学 ...
- BigData进阶--Spark中的函数与符号
转自:https://blog.csdn.net/YSC1123/article/details/78905090 1.Character.isDigit() 判断是否为数字 2.Character. ...
- JavaScript中valueOf函数与toString方法
基本上,所有JS数据类型都拥有valueOf和toString这两个方法,null除外.它们俩解决javascript值运算与显示的问题,本文将详细介绍,有需要的朋友可以参考下 JavaScrip ...
- 头文件string.h中的函数及使用方法
来源:http://blog.csdn.net/tsyj810883979/article/details/5116817 字符串拷贝1 @函数名称: strdup函数原型: char *st ...
随机推荐
- C#保存日志文件到txt中,可追加保存,定时删除最后一次操作半年前日志文件
/// <summary> /// 输出指定信息到文本文件 /// </summary> /// <param name="msg">输出信息& ...
- WEB服务器,TOMCAT和servlet之间的关系
WEB服务器,TOMCAT和servlet之间的关系 什么是WEB服务器Web服务器是指能够为发出请求的浏览器提供文档的程序.服务器是 一种被动程序,只有浏览器发出请求的时候才会响应.应用层使用 的是 ...
- Java获取项目根目录等其他系统属性
一 相对路径的获得 说明:相对路径(即不写明时候到底相对谁)均可通过以下方式获得(不论是一般的java项目还是web项目) String relativelyPath=System.getProper ...
- WPF 查找控件的所有子控件
/// <summary> /// 查找子控件 /// </summary> /// <typeparam name="T">控件类型</ ...
- Python 上下文管理协议中的__enter__和__exit__基本理解
所谓上下文管理协议,就是咱们打开文件时常用的一种方法:with __enter__(self):当with开始运行的时候触发此方法的运行 __exit__(self, exc_type, exc_va ...
- 自己动手写java锁
1.LockSupport的park和unpark方法的基本使用,以及对线程中断的响应性 LockSupport是JDK中比较底层的类,用来创建锁和其他同步工具类的基本线程阻塞原语.java锁和同步器 ...
- AbstractMethodError:
AbstractMethodError: This java.lang.AbstractMethodError is usually thrown when we try to invoke the ...
- IP通信基础学习第七周(上)
局域网的优点:具有广播功能,从一个站点可以方便的访问全网,局域网上的主机可共享连接在局域网上的各种资源:便于系统的扩展和逐渐地演变,各设备的位置可灵活调整和改变:提高了系统的可靠性.可用性和生存性. ...
- ARP抓包实战小结-TCP/IP协议学习
2011-12-26 21:36:47 图1 一,环境说明 硬件连线.PC与2440开发板直接用网线连接. PC的ip地址:192.168.0.107.2440开发板的ip地址:192.168.0.1 ...
- NOIP2015题解
D1T1模拟 #include<bits/stdc++.h> #define re(i,l,r) for(int i=(l);i<=(r);i++) using namespace ...