Я пытаюсь воссоздать запрос SQL в Spark SQL. Обычно я бы вставил в таблицу вот так:
INSERT INTO Table_B
(
primary_key,
value_1,
value_2
)
SELECT DISTINCT
primary_key,
value_1,
value_2
FROM
Table_A
WHERE NOT EXISTS
(
SELECT 1 FROM
Table_B
WHERE
Table_B.primary_key = Table_A.primary_key
);
Spark SQL прост, и я могу загружать данные из TempView в новый набор данных. К сожалению, я не знаю, как восстановить предложение where.
Dataset<Row> Table_B = spark.sql("SELECT DISTINCT primary_key, value_1, value_2 FROM Table_A").where("NOT EXISTS ... ???" );