java - Spark和Java基于两种条件过滤列

标签 java apache-spark-sql

我试图在我的数据帧上添加一个过滤器,由于某种原因 ||条件在 Java 中不起作用,但在 Scala 中工作得很好。该代码甚至无法编译。我们如何使用|| java中过滤条件的运算符

消息说

The operator || is undefined for the argument type(s) org.apache.spark.sql.Column, org.apache.spark.sql.Column

df.filter((df.col("eventNumbers").contains("2") )|| (df.col("eventNumbers").contains("45")))

最佳答案

首先,您必须:

import static org.apache.spark.sql.functions.*;

Java 中的 scala 代码将是:

df.filter((df.col("eventNumbers").contains("2") ).or(df.col("eventNumbers").contains("45")))

关于java - Spark和Java基于两种条件过滤列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51623776/

相关文章:

java - 我如何访问在单独的 Web 应用程序中实现远程接口(interface)的 EJB?

java - 我使用泛型,但不是 This Class<T> 东西!

java - 如何在 Spring Boot Java 中运行多个监听器?

python - 获取 TypeError ("StructType can not accept object %r in type %s"% (object, type(obj)))

sql - 不匹配的输入 'from' 期待 <EOF> SQL

java - 无法使用 mongodb java 驱动程序将文档插入集合中

java - 无法在 Groovy 中连接 SQL 服务器

scala - 在 Spark DataFrame 中基于旧列添加新列

sql - 在spark中找到两个表之间最接近的时间

python - 加入来自同一来源的两个 DataFrame