第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Apache Spark - 'LeftAnti' 加入歧義列錯誤

Apache Spark - 'LeftAnti' 加入歧義列錯誤

動漫人物 2023-01-05 16:46:26
我正在嘗試在 spark 2.4 中執(zhí)行 leftanti 連接,但我遇到了錯誤。Dataset<Row> df = spark.read()            .option("mode", "DROPMALFORMED")            .schema(schema)            .csv("/some/path/cars.csv");Dataset<Row> Audis = df.filter(col("Make").equalTo("Audi"));Dataset<Row> BMWs = df.filter(col("Make").equalTo("BMW"));Audis.join(BMWs, "Make").show();df.as("df").join(Audis.as("audi"), col("Make"), "leftanti")           .show();第一個連接工作正常,但對于 leftanti,我收到以下錯誤:org.apache.spark.sql.AnalysisException: Reference 'Make' is ambiguous, could be: df.Make, audi.Make.;為什么這會模棱兩可?它應該知道在這種連接中哪個列應該檢查“IS NOT NULL”。其他示例通過提供列表達式在 Scala 中顯示了這一點,但這在 Java 中似乎是不可能的,因為沒有方法簽名支持像 'df.Make == Audi.Make' 這樣的表達式字符串// No method exists for such a signaturedf.as("df").join(Audis.as("audi"), "df.Make == audi.Make", "leftanti")到目前為止,我看到的所有此類連接示例都不是 Java 語言,有人可以解釋為什么會出現(xiàn)此錯誤以及什么是有效示例嗎?
查看完整描述

1 回答

?
SMILET

TA貢獻1796條經(jīng)驗 獲得超4個贊

咨詢一些同事并一起度過幾個小時。您需要使用 col("MyColumn").equalTo(col("OtherColumn"))。

這個例子有效:

df.as("df").join(Audis.as("audi"), col("df.Make").equalTo(col("audi.Make")), "leftanti")


查看完整回答
反對 回復 2023-01-05
  • 1 回答
  • 0 關注
  • 132 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號