Ich habe eine Spalte vom Typ Integer Arrays erzeugen:Spark-SQL-Array ein Array mit Werten in einer Spalte
case class Testing(name: String, age: Int, salary: Double, array: Array[Int])
val x = sc.parallelize(Array(
Testing(null, 21, 905.33, Array(1,2,3)),
Testing("Noelia", 26, 1130.60, Array(3,2,1)),
Testing("Pilar", 52, 1890.85, Array(3,3,3)),
Testing("Roberto", 31, 1450.14, Array(1,0,0))
))
// Convert RDD to a DataFrame
val df = sqlContext.createDataFrame(x)
// For SQL usage we need to register the table
df.registerTempTable("df")
Ich möchte ein Array, dessen Elemente die Werte der Spalte „Array erstellen ". Irgendeine Idee, wie man das in Spark SQL macht?
sqlContext.sql("SELECT [array] from df").show
[ [1,2,3], [3,2,1], [3,3,3], [1,0,0]]
Ich glaube, Sie Code fehlen. Wenn Sie wirklich von Spark SQL sprechen, benötigen Sie einen Schritt, in dem Sie einen DataFrame erstellen. –
Es versteht sich, dass besser? – nest