我的第一个表有数百万行,有多列,例如:
ID Name Dept City State
11 sam sales Boston MA
22 Bob market Atlanta GA
25 Mike IT SF CA
和第二个查找表包含两行,包含Number和States,示例如下,
No State
1 CA
2 TX
如何从第一张表中获得结果,不包括表2中有状态值的行?
Spark不支持子查询,如何在spark中完成?
答案 0 :(得分:1)
SELECT * FROM table1
WHERE state NOT IN (SELECT state FROM table2 )
答案 1 :(得分:1)
这是通用SQL,您可以将其调整到您的特定数据库。
另外,如果您有数百万条记录,请确保您要过滤的字段上有索引。
请告诉我这是否有帮助。
select * from firsttable
where State not in (select distinct state from secondtable)
答案 2 :(得分:0)
试试这个:
SELECT *
FROM Table1
LEFT JOIN Table2
ON (Table1.state = Table2.state)
WHERE Table2.state IS NULL