intersectAll

Zwraca nową ramkę danych zawierającą wiersze zarówno w tej ramce danych, jak i w innej ramce danych, zachowując duplikaty.

Składnia

intersectAll(other: "DataFrame")

Parametry

Parameter Typ Opis
other Ramka danych Kolejna ramka danych, która musi zostać połączona.

Zwroty

DataFrame: połączona ramka danych.

Notatki

Jest to odpowiednik w języku INTERSECT ALL SQL. Zgodnie ze standardem w języku SQL ta funkcja rozpoznaje kolumny według pozycji (a nie według nazwy).

Examples

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.intersectAll(df2).sort("C1", "C2")
result_df.show()
# +---+---+
# | C1| C2|
# +---+---+
# |  a|  1|
# |  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.intersectAll(df2).sort("id", "value")
result_df.show()
# +---+-----+
# | id|value|
# +---+-----+
# |  2|    B|
# +---+-----+