有一个库,里面的:
A 表 是 企业用户的基本信息:
SID      NAME
--------------
  2      AAAA
  5      BB
--------------
B 表 是上面 A 表里的企业交的数据,如下:
SID      DATETIME      NOTES
------------------------------
 2       1998-3-4        XXXX
 5       2003-1-3        BBBB
 2       2005-8-9        CCCC
 2       2005-7-3        CCCC
------------------------------
请问:
1 : 我要找出 A 表里, 2005年7月未交数据的企业应如何找?
2 : 我要找 BB 这个企业最后递交的数据又如何?
1. select * from tbA as a where not exists(
       Select * from tbB where SID=a.SID and Datediff(month,DATETIME,'2005-07-01')=0)
SELECT          b.*
FROM            TABLE1 a INNER JOIN
                      TABLE2 b ON a.SID = b.SID
WHERE           (a.NAME = 'BB') AND (NOT EXISTS
                          (SELECT          *
                             FROM             TABLE2
                             WHERE            SID = b.SID AND DATETIME > b.DATETIME))
	
posted on 2007-04-10 16:40 
飞翔的心 阅读(1299) 
评论(0)  编辑  收藏  所属分类: 
SQL