【发布时间】:2017-03-31 01:36:35
【问题描述】:
我有两个表:excluded 和 kagglerresults。我正在尝试查找excluded 中存在但kaggleresults 中不存在的记录
计数:
scala> spark.sql("select * from excluded").count()
res136: Long = 4652
scala> spark.sql("select * from kaggleresults").count()
res137: Long = 4635
区别是17
scala> res136-res137
res139: Long = 17
我正在尝试获取那 17 条记录。我在下面编写了查询,但它返回38。
scala> spark.sql("select * from excluded left join kaggleresults on kaggleresults.subject_id = excluded.subject_id where kaggleresults.subject_id is null").count()
res135: Long = 38
问题
我需要编写什么查询来获取这 17 条记录?
【问题讨论】:
-
请告诉我这些表之间的共同ID
-
Anthony 您的排除查询看起来正确。您可以像您所做的那样通过左连接来完成,EXISTS 或 NOT IN 但都应该产生与您可能得到 38 相同的结果,因为 38 条记录不存在。您说的是 17,但可能发生的另一种变化是 kagglersults 中未被排除的记录,您可能有 21 条这样的记录,这意味着净差异为 17
-
@Anthony 请检查以下查询,我认为它对您有用
标签: sql apache-spark apache-spark-sql