Intenta entender el código bien antes de adaptarlo a tu proyecto si tquieres aportar algo puedes compartirlo con nosotros.
Solución:
los col("name")
le da una expresión de columna. Si desea extraer datos de la columna “nombre”, simplemente haga lo mismo sin col("name")
:
val names = test.filter(test("id").equalTo("200"))
.select("name")
.collectAsList() // returns a List[Row]
Luego, para una fila, podría obtener el nombre en String por:
val name = row.getString(0)
val maxDate = spark.sql("select max(export_time) as export_time from tier1_spend.cost_gcp_raw").first()
val rowValue = maxDate.get(0)
Con este fragmento, puede extraer todos los valores de una columna en un string. Modifique el fragmento con cláusulas where para obtener el valor deseado.
val df = Seq((5, 2), (10, 1)).toDF("A", "B")
val col_val_df = df.select($"A").collect()
val col_val_str = col_val_df.map(x => x.get(0)).mkString(",")
/*
df: org.apache.spark.sql.DataFrame = [A: int, B: int]
col_val_row: Array[org.apache.spark.sql.Row] = Array([5], [10])
col_val_str: String = 5,10
*/
El valor de toda la columna se almacena en col_val_str
col_val_str: String = 5,10
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)