web-dev-qa-db-fra.com

Spark dataframe récupère la valeur de la colonne dans une variable de chaîne

J'essaie d'extraire la valeur de la colonne dans une variable afin de pouvoir utiliser la valeur ailleurs dans le code. J'essaye comme le suivant

 val name= test.filter(test("id").equalTo("200")).select("name").col("name")

Il revient

 name org.Apache.spark.sql.Column = name

comment obtenir la valeur?

14
G G

La col("name") vous donne une expression de colonne. Si vous souhaitez extraire des données de la colonne "nom", faites simplement la même chose sans col("name"):

val names = test.filter(test("id").equalTo("200"))
                .select("name")
                .collectAsList() // returns a List[Row]

Ensuite, pour une ligne, vous pouvez obtenir le nom dans String en:

val name = row.getString(0)
19
Yuan JI
val maxDate = spark.sql("select max(export_time) as export_time from  tier1_spend.cost_gcp_raw").first()

val rowValue = maxDate.get(0)
1
Rajiv Singh