我有一个具有4个唯一值的数据框。我需要创建一个FOR循环,该循环将在MSSQL DB中创建相应的表。例如,iterable_loc数据框具有值(北,东,西,南),我想为每个区域创建一个表,并使用各自的名称。
如果不存在则创建表iterable_loc(nvarchar区域(10),int计数)
你们能帮忙吗?
问候,
检查下面的代码
使用spark您还可以创建所需的表格,如下所示。在此,我以postgress
为例。您可以根据需要更改以下代码。
scala> df.show(false)
+-----+
|zone |
+-----+
|North|
|East |
|West |
|South|
+-----+
val options = Map(
"url" -> "jdbc:postgresql://localhost:5432/postgres",
"driver" -> "org.postgresql.Driver",
"dbtable" -> "postgres",
"user" -> "postgres",
"password" -> "postgres"
)
df
.map(_.getAs[String](0))
.collect
.foldLeft(df)((ddf,zone) =>{
ddf.filter($"zone" === zone).withColumnRenamed("zone",zone).write.format("jdbc").saveAsTable(zone);
ddf
})