我有Visual Studio 2005,并且正在VB中编写代码,而不是C +。我需要一个Select语句,并找到一些接近但不符合我的情况。我有三个表:加入两个表格,然后从第三个表中拉出不匹配的记录
PROJECT
[Projnum]
[ShipDate]
CUSTOMER
[Projnum]
[Jobnum]
TAGS
[Jobnum]
我需要加入客户和项目,所以我知道所有的CUSTOMER.Jobnum记录,其中PROJECT.ShipDate为空。在这些记录中,我需要从TAGS.Jobnum中找出哪些没有匹配的记录。
任何帮助将不胜感激。谢谢你,Chuck。
'NOT EXISTS'应该更快。请参阅:[左外连接vs不存在](http://sqlinthewild.co.za/index.php/2010/03/23/left-outer-join-vs-not-exists/) – 2011-05-10 20:35:21
对于几个版本的Postgresql ,“不存在”表现不佳。我说*“可能会更快”*,因为相对速度取决于正在使用的数据库。我建议OP在预测JOIN,NOT EXISTS或NOT IN是否最快之前,在真实数据上运行他的RDBMS解释(或等价物)。 – 2011-05-10 20:42:01