我需要查看两个共享两个变量的表,并从一个表中获取数据列表,而另一个表中没有匹配的数据。例子:
表xName日期的地方xAmount
表ByName日期的地方yAmount
我需要能够编写一个查询,将检查表a并找到在表b中没有相应条目的条目。如果它是一个变量问题,我可以使用不在语句中,但我想不出一种方法来做到这一点与两个变量。左连接看起来也不像可以这样做。因为我们讨论的是数千个日期和数百个地名,所以通过特定的日期或地名来查看它是行不通的。
提前感谢任何可以帮助的人。
SELECT TableA.Date,
TableA.Place,
TableA.xName,
TableA.xAmount,
TableB.yName,
TableB.yAmount
FROM TableA
LEFT OUTER JOIN TableB
ON TableA.Date = TableB.Date
AND TableA.Place = TableB.Place
WHERE TableB.yName IS NULL
OR TableB.yAmount IS NULL
SELECT * FROM A WHERE NOT EXISTS
(SELECT 1 FROM B
WHERE A.xName = B.yName AND A.Date = B.Date AND A.Place = B.Place AND A.xAmount = B.yAmount)
in ORACLE:
select xName , xAmount from tableA
MINUS
select yName , yAmount from tableB