我有一个 id 的 txt 文件,.txt 文件中每行一个
BigInteger
id。我想用 Scala 编写一个简单的 SQL 查询,读取这些 id 并将这些 id 包含在 where 子句中,因为我只对查询这些特定 id 的值感兴趣。
示例 .txt 文件
1234566789
9876543212
假设 $id 是 .txt 中的 id 集或列表的示例查询。上面的文件。
spark.sql(f"""
SELECT
table_x.id,
AVG(table_x.cost)
FROM table_x
WHERE table_x.id = $id
GROUP BY table_x.id
""")
我正在寻找高效的东西。我想我可以加载这些 id 并将它们作为一个集合存储在 Scala 中,并检查这个集合中是否存在
table_x.id
。但我不确定最有效的解决方案是什么,因为 ids 的 .txt 文件的行数将超过 100k。