deelnemen

Wordt samengevoegd met een ander DataFrame, met behulp van de opgegeven join-expressie.

Syntaxis

join(other: "DataFrame", on: Optional[Union[str, List[str], Column, List[Column]]] = None, how: Optional[str] = None)

Parameterwaarden

Kenmerk Typ Beschrijving
other DataFrame Rechts van de join.
on str, list of Column, optional een tekenreeks voor de naam van de joinkolom, een lijst met kolomnamen, een join-expressie (kolom) of een lijst met kolommen. Als on dit een tekenreeks of een lijst met tekenreeksen is die de naam van de joinkolom(s) aangeeft, moeten de kolommen aan beide zijden bestaan en wordt er een equi-join uitgevoerd.
how str, optioneel standaard inner. Moet een van: inner, , cross, outer, , fullfullouter, full_outer, , leftleftouter, left_outer, rightrightouterright_outersemileftsemileft_semi, , en . antileftantileft_anti

Retouren

DataFrame: Gekoppeld dataframe.

Examples

import pyspark.sql.functions as sf
from pyspark.sql import Row
df = spark.createDataFrame([Row(name="Alice", age=2), Row(name="Bob", age=5)])
df2 = spark.createDataFrame([Row(name="Tom", height=80), Row(name="Bob", height=85)])

df.join(df2, "name").show()
# +----+---+------+
# |name|age|height|
# +----+---+------+
# | Bob|  5|    85|
# +----+---+------+

joined = df.join(df2, df.name == df2.name, "outer").sort(sf.desc(df.name))
joined.show()
# +-----+----+----+------+
# | name| age|name|height|
# +-----+----+----+------+
# |  Bob|   5| Bob|    85|
# |Alice|   2|NULL|  NULL|
# | NULL|NULL| Tom|    80|
# +-----+----+----+------+

df.alias("a").join(
    df.alias("b"), sf.col("a.name") == sf.col("b.name"), "outer"
).sort(sf.desc("a.name")).select("a.name", "b.age").show()
# +-----+---+
# | name|age|
# +-----+---+
# |  Bob|  5|
# |Alice|  2|
# +-----+---+