Skip to main content

intersect

Return a new DataFrame containing rows only in both this DataFrame and another DataFrame. Note that any duplicates are removed. To preserve duplicates use intersectAll.

Syntax

intersect(other: "DataFrame")

Parameters

Parameter

Type

Description

other

DataFrame

Another DataFrame that needs to be combined.

Returns

DataFrame: Combined DataFrame.

Notes

This is equivalent to INTERSECT in SQL.

Examples

Python
df1 = spark.createDataFrame([("a", 1), ("a", 1), ("b", 3), ("c", 4)], ["C1", "C2"])
df2 = spark.createDataFrame([("a", 1), ("a", 1), ("b", 3)], ["C1", "C2"])
result_df = df1.intersect(df2).sort("C1", "C2")
result_df.show()
# +---+---+
# | C1| C2|
# +---+---+
# | a| 1|
# | b| 3|
# +---+---+

df1 = spark.createDataFrame([(1, "A"), (2, "B")], ["id", "value"])
df2 = spark.createDataFrame([(2, "B"), (3, "C")], ["id", "value"])
result_df = df1.intersect(df2).sort("id", "value")
result_df.show()
# +---+-----+
# | id|value|
# +---+-----+
# | 2| B|
# +---+-----+