2013-03-12 69 views
0

假设我有两个表如下,我想写一个查询和规则是 我想找出哪个orderID没有attachmentID。 如何在SQL中查询它?SQL Server查询帮手

OrderID  Name 
1    Computer  
2    Laptop  
3    Tablet  

AttachmentID  OrderID  Url 
1      1  …. 
2      2  …. 
+0

所以你正在寻找'OrderID = 3'?这就是'LEFT JOIN'寻找'AttachmentID IS NULL'的工作。 – 2013-03-12 20:14:52

回答

1
select * 
from Orders o 
where not exists 
     (
     select * 
     from Attachments a 
     where a.OrderID = o.OrderID 
     ) 
1

另一种可能的答案,假设SQL服务器

select OrderID from Orders 
EXCEPT 
select OrderID from Attachments 

MSDN doc for Except and Intersect获取更多信息。