2016-10-19 18 views
0

データ型にstring型のフィールドがあります。私はmysqlに保存するために上書きモードを使用しています。文字列フィールドは、mysqlのテキストフィールドとして保存されています。私はそれをvarchar(40)として保存したい。Spark:DataFrameの型変換

df.write.mode("overwrite").jdbc(mysqlUrl,tableName,properties) 

どのように私は同じことを達成することができますか?

また、データフレームにインデックスを適用することは可能ですか?

答えて

1

キャスト関数を使用して、データベースに書き込む前にデータフレームのデータ型を変換します。

df.selectExpr(cast(column name) as int) fromid).write.mode("overwrite").jdbc(mysqlUrl,tableName,properties) 

ウィンドウ機能を使用してインデックスを適用できます。