-1
Spark DataFrameで 'SQL'クエリを実行しようとしています。私はテーブルとしてdfの名前を登録しましたが、今はudfを適用したカラムでselectを実行してから、特定の条件を満たす行をピックアップしようとしています。Spark SQL "select column AS ..."カラムが見つかりません
問題は、私のWHERE
節で修正された列を参照していますが、AS
で宣言された名前を見ることができないということです。
DataFrame df = sqlContext.read()
.format("com.databricks.spark.csv")
.option("header", "true")
.option("delimiter", delimiter)
.load(path);
df.registerTempTable("df");
String sqlDfQuery = "SELECT parseDateTime(start) as start1 FROM df WHERE start1 > 1";
if (sqlContext.sql(sqlDfQuery).take(1) != null) return true;
私は戻って
org.apache.spark.sql.AnalysisExceptionを取得していますことを実行しています:[スコア、開始、...
: 'START1' 与えられた入力列を解決することはできません
parseDateTime
その
sqlContext.udf().register("parseDateTime", (String dt) -> new DateTime(dt).getMillis(), DataTypes.LongType);
Shのように定義されたUDFであります私はそれをやろうとしていませんか?